Maison >développement back-end >C++ >Comment résoudre l'exception FileNotFoundException pour « MyAssembly.XmlSerializers » lors de la sérialisation XML ?
Automatisation de la génération d'assemblys de sérialisation XML
Une erreur fréquente lors de l'utilisation de la sérialisation XML est le FileNotFoundException
pour l'assembly "MyAssembly.XmlSerializers". Cela se produit parce que le framework ne trouve pas l'assembly de sérialisation généré automatiquement.
La solution de Microsoft implique la propriété MSBuild SGenUseProxyTypes
. La tâche SGen
inclut généralement le commutateur /proxytypes
dans la commande sgen.exe
, créant des types de proxy pour les services Web. Cependant, pour les assemblys sans services Web, la définition de SGenUseProxyTypes
sur false
empêche la génération de type proxy et force la création d'assemblys de sérialisation.
Pour implémenter ce correctif, ajoutez ces propriétés à la configuration de votre fichier de projet :
<code class="language-xml"><PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' "> <GenerateSerializationAssemblies>On</GenerateSerializationAssemblies> <SGenUseProxyTypes>false</SGenUseProxyTypes> </PropertyGroup> <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' "> <GenerateSerializationAssemblies>On</GenerateSerializationAssemblies> <SGenUseProxyTypes>false</SGenUseProxyTypes> </PropertyGroup></code>
Régler GenerateSerializationAssemblies
sur « On » et SGenUseProxyTypes
sur « false » demande à Visual Studio de générer automatiquement l'assembly de sérialisation XML requis, en résolvant le FileNotFoundException
et en garantissant une sérialisation fluide.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!