0

我有 Silverlight 应用程序。开始使用 Linq 我发现我必须在整个解决方案中的一个新项目中进行映射。要使用新项目中生成的类,我使用“添加引用”。对于 Silverlight 应用程序,可以只添加对同一种项目的引用。

在这里我遇到了问题,因为在 Silverlight 应用程序中,无法右键单击项目 Add -> New Item -> LINQ to SQL Classes。

在这种情况下,使用来自不同项目的类的整个想法可能是愚蠢的......请帮助=)

4

2 回答 2

2

Silverlight 代码在客户端执行。LINQ to SQL 将在服务器端执行。您需要一种方法来让您的 LINQ to SQL 对象通过网络连接到您的 Silverlight 客户端。最简单的方法是使用 WCF RIA 服务http://www.silverlight.net/learn/advanced-techniques/wcf-ria-services/using-wcf-ria-services

于 2012-06-19T01:13:28.770 回答
1

首先,您将无法在 silverlight 中使用 Linq-to-SQL,因为 silverlight 永远无法直接连接到 SQLServer。将 Linq-to-SQL 与 Silverlight 结合使用的唯一方法是在使用 L2S 的 Web 服务器(WCF 或其他)上创建一个服务。Silverlight 然后将与该服务通信,该服务又将与 SQLServer 通信。

在 Silverlight 和非 Silverlight 项目之间共享代码的一种简单方法是共享文件,而不是二进制引用(这是您想要做的)。从原始项目中选择 Project->Add Existing Files...。这样,原始项目将以它的格式编译,Silverlight 会将相同的代码编译成它的格式。

如果您想从 Silverlight 应用程序进行数据访问,您可能想查看 WCF RIA 服务,它大大简化了流程,并为您生成了我上面提到的服务。

于 2012-06-19T01:12:53.590 回答