我们正在尝试使用 WCF 和 ICriteria 创建一个很酷的 API,例如:
[ServiceContract]
public class ProductService
{
[OperationContract]
public List<Product> Get()
[OperationContract]
public List<Product> GetByCriteria(Criteria criteria)
}
我们正在考虑使用 DetachedCriteria,以便任何人都可以发送它,并将其连接到服务中的 session ,以便在数据库前面运行查询。
有人创建这样的API吗? 我们应该使用 Nhibernate 的 ICriteria 吗? 还有其他很酷的想法吗?
谢谢。
最佳答案
这不是一个很酷的 API。它是面向对象的,而不是面向服务的。而且它不会起作用。
您必须使用 KnownTypeAttribute(或 ServiceKnownTypeAttribute)进行多态查询。 (参见 this 问题)。
此外,这不是一个非常优雅的解决方案,我会劝阻您这样做。在服务世界中要明确。
关于c# - WCF 操作契约(Contract)和 Nhibernate ICriteria,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/576919/