Question

J'utilise DotNetOpenAuth (dont les références version System.Web.Mvc 1.0.0.0) dans un projet Mvc 3.0.0.0 dans Visual Studio 2010.

J'utilise la redirection de liaison assemblage comme suit: -

<runtime>
  <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
    <dependentAssembly>
      <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
      <bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="3.0.0.0" />
    </dependentAssembly>
  </assemblyBinding>
</runtime>

Tout fonctionne très bien, sauf l'analyse de code qui me donne les erreurs suivantes: -

  

CA0001: L'erreur suivante a été rencontrée alors que le module de lecture X: référence Assemblée ne peut être résolu. System.Web.Mvc, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35

et

  

CA0058: L'ensemble 'System.Web.Mvc, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35' référencé n'a pas été trouvé. Assemblage est nécessaire pour l'analyse et a été référencé par:. X

Y at-il un moyen d'obtenir l'outil d'analyse de code pour respecter la redirection de liaison assemblée?

Était-ce utile?

La solution

Juste pour compléter avec une réponse peu plus précise:

Vous devez soit exécuter FxCopCmd.exe avec:

fxcopcmd.exe /assemblyCompareMode:StrongNameIgnoringVersion

ou modifier votre fichier de projet Visual Studio pour le groupe de propriétés de chaque configuration de construction, comme ceci:

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
  ...
  <CodeAnalysisAdditionalOptions>/assemblyCompareMode:StrongNameIgnoringVersion</CodeAnalysisAdditionalOptions>
</PropertyGroup>

Autres conseils

Voir http://davesbox.com/archive/2008/06/10/reference-resolution-changes-in-code-analysis-and-fxcop-part-1.aspx et http: // davesbox. com / archive / 2008/06/14 / référence-résolutions-changements en code-analyse et FxCop-partie-2.aspx pour un bit d'information d'arrière-plan.

Dans VS2010 / FxCop 10.0, il y a un nouveau commutateur de ligne de commande / assemblyCompareMode pour fxcopcmd.exe qui vous permet de spécifier le mode de comparaison sans déblayage à propos avec le fichier .config. Vous pouvez spécifier en vous VS projet en utilisant la propriété CodeAnalysisAdditionalOptions MSBuild.

En plus de solution peter_raven vous pouvez spécifier l'option pour rendre le travail d'analyse du code avec la construction TFS. Ajouter ce dans les options de construction, onglet processus, catégorie avancée dans "MSBuild Arguments":

/p:CodeAnalysisAdditionalOptions=/assemblyCompareMode:StrongNameIgnoringVersion

Utilisez cette option si vous devez désactiver l'analyse du code.

Dans Visual Studio 2012,

  1. Faites un clic droit sur votre projet et sélectionnez « Propriétés » dans le menu contextuel.
  2. Cliquez sur l'onglet « Analyse du code » et décocher « Activer l'analyse du code Surchauffe »

Clean and Build. erreur d'analyse du code devrait disparaître.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top