我可以在Silverlight 4项目和标准类库中使用相同的对象吗?

时间:2011-01-30 10:37:35

标签: silverlight reference compatibility

我有这个架构:

  1. Silverlight4项目 1A。带有一些对象的silverlight类库项目

  2. WebService项目 2A。带有WebService逻辑的标准类库

  3. 我想使用1a中的对象。也在2a。但是在不同类型的框架错误的情况下我无法直接引用它。什么是通常的解决方案?制作2a。 SilverlightClassLibrary也是什么?

3 个答案:

答案 0 :(得分:3)

我使用“添加为链接”功能。

一个简单的例子:

  1. 向Silverlight添加一个类 库。
  2. 鼠标右键单击WebService类库 - >添加 - >现有项目
  3. 选择班级文件 - >单击“确定”按钮右侧的箭头 - >添加为链接。
  4. 此外,您可以以相反的方向引用类(从.NET类库到Sivlerlight类),但在这种情况下,不保证兼容性。

答案 1 :(得分:1)

对您的需求可能有点过分,但您可以考虑使用WCF Ria服务:

WCF RIA Services: Shared Code

  

WCF RIA Services使您能够编写在中间层和表示层之间共享的应用程序逻辑。

以上链接介绍了使用RIA服务和链接文件方法共享文件的优缺点。

答案 2 :(得分:0)

您无法在Silverlight中引用定位完整.NET Framework的程序集,但可以在针对完整.NET Framework的项目中引用Silverlight程序集。因此,您可以定义要在两个项目引用的Silverlight类库项目中共享的对象。这可能是最简单的方法。如果你想要两个使用相同代码的独立项目(例如,如果你想在项目中包含不适用于Silverlight的其他逻辑),那么你可以使用Vortex的解决方案,但是这样就可以让你只保留一个项目