Entity Framework Generic CRUD over SOAP WCF



我正在编写一个建立在实体框架ORM之上的WCF服务。

该服务的两个客户端是 Web 应用程序(不是客户端)和 Windows 服务。

我过去曾使用过RepositoryPattern来简化服务中的CRUD代码。是否可以通过 WCF 执行此操作?

我需要对大约十几个对象执行 CRUD,所以理想情况下,我想要一个服务合同

,如下所示:
IQueryable<T> GetAll();
IQueryable<T> FindBy(System.Linq.Expressions.Expression<Func<T, bool>> predicate);
virtual void Add(T entity);
virtual void Delete(T entity);
virtual void Edit(T entity);
virtual void Save();

WCF 中可能出现这种事情吗?有没有更好的方法?

使用

WCF 数据服务 - 它不使用 SOAP,而是使用 OData (REST),但它提供了开箱即用的功能。使用标准的 SOAP WCF 服务,您必须将表达式树的整个序列化写入 SOAP 请求,并将其重新构造为服务器上的 Linq 查询。

另一个选项是 ASP.NET Web-API,它也支持开箱即用的客户端上使用IQueryalbe

最新更新