.Net 3.5引用 4.0程序集

 今天查找有关低版本引用高版本的程序集。

 后来发现一个同仁的文章,写的比较好,后来实践成功。

 在app.config中添加一个配置节:startup

<startup useLegacyV2RuntimeActivationPolicy="true">

<supportedRuntime version="v4.0"/>

</startup>

 

调用例子:

 测试程序集:TestForm 为3.5程序集

 反射引用程序集:TestClass 为4.0程序集 ,对应接口程序集:ITestClass 为3.5

 

则可以在TestForm (启动程序集)中app.config配置

 

<?xml version="1.0"?>

<configuration>

  <startup useLegacyV2RuntimeActivationPolicy="true">

    <supportedRuntime version="v4.0"/>

  </startup>

</configuration>

 

后,启动中加载:

 

 

  /// <summary>

        /// 应用程序的主入口点。

        /// </summary>

        [STAThread]

        static void Main()

        {

            System.Reflection.Assembly k = System.Reflection.Assembly.LoadFile(@"盘符:\路径\TestClass.dll");

 

//Namespace02.IClass1在ITestClass程序集中,需要引用到本项目中

            Namespace02.IClass1 obj = k.CreateInstance("Namespace01.Class1") as Namespace02.IClass1;

            string str = obj.GetHellow();

            MessageBox.Show(str);

 

         

 

        }

 

执行成功!

 

 

注意:

  开发环境:visual studio 2010

 

 

感谢无恨星晨:

参考引用:

http://www.cnblogs.com/weixing/archive/2012/04/09/2439060.html

 

 

 

 

 

 

你可能感兴趣的:(低版本引用高版本的程序集)