Linq to Sql with ADO.Net Data Services

时间:2009-03-24 22:09:41

标签: silverlight web-services linq-to-sql ado.net wcf-data-services

我正在考虑在项目中使用ADO.Net Data Services,以便将数据传输到Silverlight客户端。我想将数据服务与我现有的Linq To Sql类和设计器一起使用。我可能可以将所有内容重新生成为ADO.Net实体对象,但我觉得这对于DRY原因来说是一个糟糕的设计。

我是ADO.Net数据服务的新手,所以我一直在阅读它,但我发现的大多数文章都是预先发布的,所以我有一些问题。

首先,我已经读过,虽然您可以使用Linq to Sql的数据服务,但您只能使用它们来读取数据,而不能写入数据。这仍然是这样吗?

其次,我希望拥有权限,因此只有特定用户才能查看某些表。我正在使用超出Asp.net Membership和Roles的自定义权限系统。 ADO.Net数据服务是否提供了一种自定义授权访问的方法?

1 个答案:

答案 0 :(得分:1)

1)是的,目前,ADO.net只有Entity Framework的IUpdateable实现。但我很确定你能找到LinqToSQL的免费实现(这是很多人做的第一件事)

2)您可以通过“QueryInterceptors”过滤(或简单地拒绝访问)给定的集合,轻松应用您需要的whateverauhtorization方案。这些基本上是您的服务上的方法,只要有人发送给定集的查询,就会应用这些方法。这样,您可以根据用户的权限应用更严格的过滤器,或者只是引发异常