Compilerwarnung (Stufe 2) CS1701Compiler Warning (level 2) CS1701

Es wird angenommen, dass der Assemblyverweis "Assemblyname1" mit "Assemblyname2" übereinstimmt. Möglicherweise müssen Sie eine Laufzeitrichtlinie bereitstellen.Assuming assembly reference "Assembly Name #1" matches "Assembly Name #2", you may need to supply runtime policy

Die zwei Assemblys unterscheiden sich in Release- und/oder Versionsnummer.The two assemblies differ in release and/or version number. Für den Fall der Zusammenführung müssen Sie Anweisungen in der Konfigurationsdatei der Anwendung angeben. Außerdem müssen Sie den richtigen starken Namen einer Assembly angeben, wie im folgenden Beispielcode veranschaulicht.For unification to occur, you must specify directives in the application's .config file, and you must provide the correct strong name of an assembly, as demonstrated in the following example code.

BeispielExample

Im folgenden Beispiel mit mehreren Dateien wird mithilfe zweier verschiedener externer Aliase auf eine Assembly verwiesen.The following multifile sample references an assembly using two different external aliases. In diesem ersten Beispiel wird die frühere Codeversion erstellt, mit der Assembly CS1701_d erstellt wird.This first sample builds the older version of the code that creates assembly CS1701_d.

// CS1701_a.cs  
// compile with: /target:library /out:cs1701_d.dll /keyfile:mykey.snk  
using System.Reflection;  
[assembly:AssemblyVersion("1.0")]  
public class A {  
   public void M1() {}  
}  

public class C1 {}  

BeispielExample

Dies ist der Code, mit dem die neuere Version von Assembly CS1701_d erstellt wird.This is the code that creates the newer version of assembly CS1701_d. Beachten Sie, dass sich das Kompilierergebnis in einem anderen Verzeichnis als die ältere Version befindet, weil die Ausgabedateien dieselben Namen aufweisen.Note that it compiles into a different directory than the older version, necessary since the output files have the same names.

// CS1701_b.cs  
// compile with: /target:library /out:c:\\cs1701_d.dll /keyfile:mykey.snk  
using System.Reflection;  
[assembly:AssemblyVersion("2.0")]  
public class A {  
   public void M2() {}  
   public void M1() {}  
}  

public class C2 {}  
public class C1 {}  

BeispielExample

In diesem Beispiel werden die externen Aliase A1 und A2 eingerichtet.This sample sets up the external aliases A1 and A2.

// CS1701_c.cs  
// compile with: /target:library /reference:A2=c:\\cs1701_d.dll /reference:A1=cs1701_d.dll  

extern alias A1;  
extern alias A2;  
// using System;  
using a1 = A1::A;  
using a2 = A2::A;  

public class Ref {  
   public static a1 A1() { return new a1(); }  
   public static a2 A2() { return new a2(); }  

   public static A1::C1 M1() { return new A1::C1(); }  
   public static A2::C2 M2() { return new A2::C2(); }  
}  

BeispielExample

In diesem Beispiel werden Methoden mithilfe von zwei verschiedenen Aliasen von A aufgerufen. Im folgenden Beispiel wird C1701 generiert.This sample calls methods using two different aliases of A. The following sample generates C1701.

// CS1701_d.cs  
// compile with: /reference:c:\\CS1701_d.dll /reference:CS1701_c.dll  
// CS1701 expected  
class Tester {  
   public static void Main() {  
      Ref.A1().M1();  
      Ref.A2().M2();  
   }  
}