Azure / autorest.csharp

Extension for AutoRest (https://github.com/Azure/autorest) that generates C# code
MIT License
140 stars 160 forks source link

Sequence contains more than one matching element #1517

Open dradoaica opened 2 years ago

dradoaica commented 2 years ago

Does not work with: Attachment: CodeModel yaml and Configuration json.zip

AutoRest code generation utility [cli version: 3.4.0; node: v14.17.6] (C) 2018 Microsoft Corporation. https://aka.ms/autorest NOTE: AutoRest core version selected from configuration: 3.0.6375. Loading AutoRest core 'C:\Users\DanutRadoaica.autorest\@autorestcore@3.0.6375\nodemodules\@autorest\core\dist' (3.0.6375) Loading AutoRest extension '@autorest/csharp' (latest->3.0.0-beta.20210914.1) Loading AutoRest extension '@autorest/modelerfour' (4.19.3->4.19.3) FATAL: Internal error in AutoRest.CSharp Please file an issue at https://github.com/Azure/autorest.csharp/issues/new. Attach the written 'Configuration.json' and 'CodeModel.yaml' or the original swagger so we can reproduce your error.

Exception: Sequence contains more than one matching element at System.Linq.ThrowHelper.ThrowMoreThanOneMatchException() at System.Linq.Enumerable.SingleOrDefault[TSource](IEnumerable1 source, Func2 predicate) at AutoRest.CSharp.Generation.Writers.CodeWriterExtensions.<>c_DisplayClass16_0.b_0(ObjectTypeProperty property) in D:\a\1\s\autorest.csharp\src\AutoRest.CSharp\Common\Generation\Writers\CodeWriterExtensions.cs:line 331 at System.Linq.Utilities.<>c_DisplayClass2_03.<CombineSelectors>b_0(TSource x) at System.Linq.Enumerable.SelectArrayIterator2.ToList() at System.Linq.Enumerable.ToList[TSource](IEnumerable1 source) at AutoRest.CSharp.Generation.Writers.CodeWriterExtensions.WriteInitialization(CodeWriter writer, Action2 valueCallback, ObjectType objectType, ObjectTypeConstructor constructor, IEnumerable1 initializers) in D:\a\1\s\autorest.csharp\src\AutoRest.CSharp\Common\Generation\Writers\CodeWriterExtensions.cs:line 329 at AutoRest.CSharp.Generation.Writers.ModelFactoryWriter.WriteFactoryMethodForSchemaObjectType(CodeWriter writer, MethodSignature method) in D:\a\1\s\autorest.csharp\src\AutoRest.CSharp\Common\Generation\Writers\ModelFactoryWriter.cs:line 42 at AutoRest.CSharp.Generation.Writers.ModelFactoryWriter.WriteModelFactory(CodeWriter writer, ModelFactoryTypeProvider modelFactoryType) in D:\a\1\s\autorest.csharp\src\AutoRest.CSharp\Common\Generation\Writers\ModelFactoryWriter.cs:line 23 at AutoRest.CSharp.AutoRest.Plugins.DataPlaneTarget.Execute(GeneratedCodeWorkspace project, CodeModel codeModel, SourceInputModel sourceInputModel, Configuration configuration) in D:\a\1\s\autorest.csharp\src\AutoRest.CSharp\DataPlane\AutoRest\DataPlaneTarget.cs:line 45 at AutoRest.CSharp.AutoRest.Plugins.CSharpGen.ExecuteAsync(Task1 codeModelTask, Configuration configuration) in D:\a\1\s\autorest.csharp\src\AutoRest.CSharp\Common\AutoRest\Plugins\CSharpGen.cs:line 56 at AutoRest.CSharp.AutoRest.Plugins.CSharpGen.Execute(IPluginCommunication autoRest) in D:\a\1\s\autorest.csharp\src\AutoRest.CSharp\Common\AutoRest\Plugins\CSharpGen.cs:line 96

Works with:

AutoRest code generation utility [cli version: 3.4.0; node: v14.17.6] (C) 2018 Microsoft Corporation. https://aka.ms/autorest NOTE: AutoRest core version selected from configuration: 3.0.6370. Loading AutoRest core 'C:\Users\DanutRadoaica.autorest\@autorestcore@3.0.6370\nodemodules\@autorest\core\dist' (3.0.6370) Loading AutoRest extension '@microsoft.azure/autorest.csharp' (~2.3.79->2.3.91) Loading AutoRest extension '@microsoft.azure/autorest.modeler' (2.3.55->2.3.55)

dradoaica commented 2 years ago

Schemas contains fields like "languages" of type string and "_Languages" of type array (from there the problem)