Linq to sql oData/ADO.NET数据服务使用LINQ to SQL和解密层
我已经使用LINQtoSQL编写了一个应用程序,它将web表单提交到数据库中。我使用存储库模式将LINQ抽象为SQL 此存储库具有基本方法:Get()、Save()等 作为项目的开发,我需要对表单中的某些字段进行加密。这很简单,因为我刚刚在存储库中的Get()、Save()方法中添加了加密调用 现在,我想在其上放置一个oData层,以允许从MSExcel2010(发布时)进行RESTful提取。我有这个工作,在一些无用的错误消息等绊倒 但是,显然,这些加密字段仍然是加密的。我的存储库模式会为我解密这些。据我所知,我必须直接将我的oData服务绑定到LINQtoSQL上下文,以使模式工作,等等——除非我进入一个痛苦的世界(任何URL)Linq to sql oData/ADO.NET数据服务使用LINQ to SQL和解密层,linq-to-sql,wcf-data-services,odata,Linq To Sql,Wcf Data Services,Odata,我已经使用LINQtoSQL编写了一个应用程序,它将web表单提交到数据库中。我使用存储库模式将LINQ抽象为SQL 此存储库具有基本方法:Get()、Save()等 作为项目的开发,我需要对表单中的某些字段进行加密。这很简单,因为我刚刚在存储库中的Get()、Save()方法中添加了加密调用 现在,我想在其上放置一个oData层,以允许从MSExcel2010(发布时)进行RESTful提取。我有这个工作,在一些无用的错误消息等绊倒 但是,显然,这些加密字段仍然是加密的。我的存储库模式会为我解
是否有一种方法可以将加密/解密层插入到请求中,以便“即时”完成解密?我查看了DataService的OnStartProcessingRequest()重载,但这似乎没有多大用处。您不必直接绑定到L2S来公开OData服务。 您可以编写自己的上下文类,并直接使用反射提供程序从类公开的IQueryable属性推断模型 注意:您使用的L2S方法也只是使用反射提供程序 关键是简单地包装L2S DataContext的queryables(),这样您就可以将自己注入到查询执行中: