![]() |
1
14
不幸的是,这两个框架不是二进制兼容的*,但不要因此而停止。 在解决方案中创建两个项目(一个普通类库项目和一个紧凑的框架类库项目),并将所有文件从一个项目添加到另一个项目中。 作为链接 单击“添加现有文件”,然后选中“文件”对话框上的“添加为链接”复选框。 现在您只有一组源代码需要维护,但是您的解决方案将同时构建两个DLL。 如果文件中有任何特定于桌面框架的代码,并且无法在紧凑框架上工作,则可以将其包装为编译器指令(至少在C中),如下所示:
|
![]() |
2
5
实际上,桌面版本可以加载和运行CF程序集。 |
![]() |
3
5
说真的,我不知道为什么最重要的答案是如此之高。你根本不需要两个独立的项目。另外,我不喜欢预处理器指令,它们很难看,在处理构建参数时需要额外的项目知识。将所有不兼容的部分和部分外包到一个接口(iplaformservices或类似的接口)更漂亮,或者您甚至可以问:
这两种方案都比IMO预处理器指令更好。 |