相关人员:Visual Studio 2010, WCF Web服务, LINQ2SQL, .Net 4.0
如果这是一个愚蠢的问题,请原谅我,但我相信我已经看到了类似于我正在尝试做的事情。
我们有一个用于读/写数据库的Linq2Sql数据上下文。我们希望为某些供应商公开API到数据库。我似乎想起了一种通过Web服务公开大多数数据上下文功能的方法,而无需手动为所有CRUD方法创建包装器。那里的任何人都知道如何做到这一点?我似乎记得只用几行代码来查看通过Web服务公开的数据上下文。
我们还需要根据权限拒绝访问某些方法,但可能会自己解决这个问题。
答案 0 :(得分:3)
不确定您所看到或引用的内容......但WCF数据服务似乎就是您所追求的 - 请查看http://msdn.microsoft.com/en-us/data/bb931106.aspx
答案 1 :(得分:2)
所以,事实证明答案很简单。
修改代码以支持您的上下文:
using System.Data.Services;
using System.Data.Services.Common;
namespace DelvingWare.Data.FilestreamServer.WebServices
{
public class WcfDataService1 : DataService<MyDataContext>
{
// This method is called only once to initialize service-wide policies.
public static void InitializeService(DataServiceConfiguration config)
{
// TODO: set rules to indicate which entity sets and service operations are visible, updatable, etc.
// Examples:
config.SetEntitySetAccessRule("MyEntitySet", EntitySetRights.ReadSingle);
config.SetServiceOperationAccessRule("MyEntitySet", ServiceOperationRights.ReadSingle);
config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V2;
}
}
}
构建 - &gt;右键点击服务 - &gt;在浏览器中查看。瞧!