C# 如何将C.net.dll移植到siverlight以实现更大的平台独立性?
我已经使用C的基本实用程序编写了一个dll库。但是为了平台独立性,我想将它移植到silverlight。可能吗?如果可能的话,那怎么做呢C# 如何将C.net.dll移植到siverlight以实现更大的平台独立性?,c#,silverlight,dll,C#,Silverlight,Dll,我已经使用C的基本实用程序编写了一个dll库。但是为了平台独立性,我想将它移植到silverlight。可能吗?如果可能的话,那怎么做呢 或者你们还有其他建议吗 如果为Silverlight4构建DLL,则可以从.NET项目引用它;但不是相反。请参阅。在SL和.Net之间共享源代码的另一种方法是使用链接文件 在.net解决方案中,添加silverlight库项目 添加>现有项>浏览到.net项目中的源文件,选择它们,单击“添加”按钮上的小向下箭头并选择“添加为链接” 在很多情况下,不需要修改。在
或者你们还有其他建议吗 如果为Silverlight4构建DLL,则可以从.NET项目引用它;但不是相反。请参阅。在SL和.Net之间共享源代码的另一种方法是使用链接文件 在.net解决方案中,添加silverlight库项目 添加>现有项>浏览到.net项目中的源文件,选择它们,单击“添加”按钮上的小向下箭头并选择“添加为链接” 在很多情况下,不需要修改。在存在微小差异的情况下,请在源代码中使用生成标志和条件。e、 g
#if SILVERLIGHT
#else
#endif
这对我来说效果很好,尤其是当我想共享DTO库时。我的建议是为.NET和SL创建不同的项目文件。然后将公共文件添加到每个项目中 NET和SL上都有许多类和方法,因此可以使这两个项目共享相同的代码 这并不适用于所有场景。例如,我的开源项目SNMP使用UDP相关的类,但SL没有任何UDP相关的东西
我个人的选择是限制SL应用程序的大小,并将必要的部分移动到后端WCF应用程序中。您需要的是一个可移植类库:
这种方式可以在.Net、Silverlight和Windows Phone项目之间共享project/DLL。注意,Silverlight模板项目通常已经定义了Silverlight标志,用于此用途。@Anthony,谢谢提醒。这已经有一段时间了,我只是从我失败的记忆中得到了回答。