WCF OperationContract和Nhibernate ICriteria

时间:2009-02-23 08:43:35

标签: c# wcf nhibernate api data-access-layer

我们正在尝试使用WCF和ICriteria创建一个很酷的API,例如:

[ServiceContract]
public class ProductService
{
[OperationContract]
public List<Product> Get()

[OperationContract]
public List<Product> GetByCriteria(Criteria criteria)

}

我们正在考虑使用DetachedCriteria,因此任何人都可以发送它,我们将其连接到服务中的Session以运行我们数据库的查询。

有没有人创建这样的API? 我们应该使用Nhibernate的ICriteria吗? 还有其他很酷的想法吗?

感谢。

1 个答案:

答案 0 :(得分:3)

这不是很酷的API。它是面向对象的,而不是面向服务的。它不起作用。

您必须使用KnownTypeAttribute(或ServiceKnownTypeAttribute)进行多态查询。 (见this问题)。

这也不是一个非常优雅的解决方案,我会劝阻你。在服务世界中要明确。