链接客户端配置文件.net DLL与非客户端配置文件.dll?

时间:2013-03-12 11:29:18

标签: .net

我开发了一个使用.net 4.0客户端配置文件(CP)的.dll。但是,我还有一个.dll,我想与我的.dll链接,另一个.dll(DotNetOpenAuth)与客户端配置文件不兼容,因为它使用System.Web。

我知道你不能用CP兼容的项目引用非CP .dll。问题是我该怎么做:)我知道很多事情乍一看是不可能的,但有一些调整?...

我不明白为什么编译器只是没有给我警告我的项目针对CP链接非CP .dll。如果它以这种方式工作,我将能够使用CP兼容的.DLL,除非使用DotNetOpenAuth的功能被调用,否则它将在大多数情况下工作。

简而言之,我想将CP兼容性检查从编译时移到运行时。这是因为我的.dll有很多功能,大多数人永远不会使用需要DotNetOpenAuth的部分。那些需要DotNetOpenAuth的人必须使用完整的.net框架。但这绝不是其他人的表现。

我的意思是类似于AllowPartiallyTrustedCallersAttribute,它允许您将一些编译时检查移动到运行时。

我不想维护.dll的两个单独版本(一个用于Web应用程序,另一个用于客户端配置文件),因为它增加了.dll要选择的用户的复杂性。我宁愿保持简单。

当然,有一种通过反射动态加载.dll的方法,但是这需要来自运行代码的相当高的权限(在网络应用的情况下,他们可能没有足够的权限)。

0 个答案:

没有答案