Avertissement du compilateur (niveau 2) CS1698
Mise à jour : novembre 2007
Message d'erreur
La référence d'assembly circulaire 'NomAssembly1' ne correspond pas au nom de l'assembly de sortie 'NomAssembly2'. Essayez d'ajouter une référence à 'NomAssembly1' ou de modifier le nom de l'assembly de sortie pour qu'il corresponde.
Circular assembly reference 'AssemblyName1' does not match the output assembly name 'AssemblyName2'. Try adding a reference to 'AssemblyName1' or changing the output assembly name to match.
L'erreur CS1698 se produit lorsqu'une référence d'assembly est inexacte. Cela peut arriver si un assembly référencé est recompilé. Pour la résoudre, ne remplacez pas un assembly qui lui-même est une dépendance d'un assembly que vous référencez.
Exemple
// CS1698_a.cs
// compile with: /target:library /keyfile:mykey.snk
[assembly:System.Reflection.AssemblyVersion("2")]
public class CS1698_a {}
// CS1698_b.cs
// compile with: /target:library /reference:CS1698_a.dll /keyfile:mykey.snk
public class CS1698_b : CS1698_a {}
L'exemple suivant génère l'erreur CS1698.
// CS1698_c.cs
// compile with: /target:library /out:cs1698_a.dll /reference:cs1698_b.dll /keyfile:mykey.snk
// CS1698 expected
[assembly:System.Reflection.AssemblyVersion("3")]
public class CS1698_c : CS1698_b {}
public class CS1698_a {}