J'ai un problème bizarre.
Lorsque j'utilise ce code, je ne parviens pas à créer, mais il ne me donne aucune erreur de génération.
le code
public void myMethod()
{
//This returns a string in JSON format.
var jsonResponse = myApi.ReadMobileDevice("1");
dynamic dynamicJson= JsonConvert.DeserializeObject(jsonResponse);
//THIS LINE BREAKS MY BUILD. NO BUILD ERRORS SHOWN
var jValue = dynamicJson["general.display_name"];
}
Quelqu'un peut-il me dire pourquoi mes freins de construction et pourquoi aucune erreur de construction ne s'affiche?
MISE À JOUR - Sortie
* A également changé var en chaîne
1>------ Build started: Project: Control, Configuration: Debug x86 ------
1> Restoring NuGet packages...
1> To prevent NuGet from downloading packages during build, open the Visual Studio Options dialog, click on the Package Manager node and uncheck 'Allow NuGet to download missing packages'.
1> All packages listed in packages.config are already installed.
1>C:\ActacomProjects\DEV-Google\Control\ModifyService.svc.cs(563,28,563,40): error CS0656: Missing compiler required member 'Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo.Create'
1>C:\ActacomProjects\DEV-Google\Control\Classes\DomainObjects\Schedules\HTTPSchedulesResponse.cs(41,34,41,36): warning CS0168: The variable 'Ex' is declared but never used
1>C:\ActacomProjects\DEV-Google\Control\Classes\DomainObjects\Schedules\HTTPSchedulesResponse.cs(87,30,87,32): warning CS0168: The variable 'Ex' is declared but never used
1>C:\ActacomProjects\DEV-Google\Control\ModifyService.svc.cs(1225,26,1225,45): warning CS0219: The variable 'recreateApplication' is assigned but its value is never used
1>C:\ActacomProjects\DEV-Google\Control\ModifyService.svc.cs(1809,71,1809,74): warning CS0168: The variable 'dnf' is declared but never used
1>C:\ActacomProjects\DEV-Google\Control\ModifyService.svc.cs(1813,54,1813,56): warning CS0168: The variable 'ex' is declared but never used
1>C:\ActacomProjects\DEV-Google\Control\ModifyService.svc.cs(5017,34,5017,36): warning CS0168: The variable 'Ex' is declared but never used
1>C:\ActacomProjects\DEV-Google\Control\ModifyService.svc.cs(5087,42,5087,44): warning CS0168: The variable 'Ex' is declared but never used
1>C:\ActacomProjects\DEV-Google\Control\ModifyService.svc.cs(5154,42,5154,44): warning CS0168: The variable 'Ex' is declared but never used
1>C:\ActacomProjects\DEV-Google\Control\ModifyService.svc.cs(5192,42,5192,44): warning CS0168: The variable 'Ex' is declared but never used
1>C:\ActacomProjects\DEV-Google\Control\ModifyService.svc.cs(5267,42,5267,44): warning CS0168: The variable 'Ex' is declared but never used
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
Vous avez cette erreur dans votre sortie:
Le compilateur manquant a requis le membre "Microsoft.CSharp.RuntimeBinder.CSharpArgumentInfo.Create"
Vous devez ajouter une référence à DLL Microsoft.CSharp.dll.
Similaire au commentaire de Saminathan S dans la réponse acceptée. Si vous utilisez des projets .NETStandard (dans mon cas NETStandard 2.0), vous devez ajouter Microsoft.CSharp à partir de NuGet plutôt que comme référence afin de résoudre cette erreur de génération. J'utilisais Visual Studio Community sur un Mac.
Vous pouvez également modifier votre fichier .csproj en ajoutant ceci, ce qui a le même résultat que @ the-senator a dit:
<PackageReference Include="Microsoft.CSharp" Version="4.5.0" />
Solution rapide.
Faites un clic droit sur Packages
> Add NuGet Packages...
> Microsoft.CSharp
Cela a fonctionné pour moi. [Mac, communauté Visual Studio 2017]