我对许可问题的经验很少.假设我正在开发.NET 2.0应用程序.在我的应用程序中使用(和分发)某些.NET 3.5 DLL是否可以?
例如,我可以将我的设置中的"System.Core.dll"复制到客户端的计算机上吗?或者我甚至可以提取一些类(例如使用Reflector),将其源代码放在我的一个项目中,并按原样使用它?
我不确定使用Reflector这样做是否合法,但是从Microsoft的Reference Source Server下载同一个类会有什么不同?
在任何情况下,我想我只是使用类,这是框架实际提供的.对我的想法有一些误解吗?
你肯定, 绝对不应该开始从一个框架版本到另一个版本的DLL重新分配.
首先,它可能是非法的(甚至或可能是特别的)使用Reflector来提取源代码) - 但更重要的是,您已经获得了一些代码,这些代码是针对另一个版本的框架运行而设计和编写的.谁知道他们是否依赖于mscorlib中的一个bug修复程序,它只在.NET 3.5中实现?
如果你想在.NET 2.0中使用LINQ to Objects,那么LINQBridge就是你的朋友.对于其他问题,我强烈建议在部署机器上寻找第三方实现或升级框架版本.