是否有可能在Silverlight中通过WCF移植和使用Nhibernate CriteriaAPI ?
本文关键字:Nhibernate CriteriaAPI WCF 有可能 Silverlight 是否 | 更新日期: 2023-09-27 18:03:05
我打算在Silverlight项目中编写和使用某种标准API来将复杂的动态请求传递给WCF服务。
起初我想使用QueryObject:UserQuery {int ?AgeMin;int ?AgeMax;字符串NameContains;如果某些属性不为空,我们会对它使用某种过滤器,但是逻辑运算符呢?(And Or)我没有办法使用QueryObject来指定这个逻辑。
所以我要写某种标准API与谓词构建器结合AND, OR表达式,但我已经使用NHibernate标准API在服务器端为什么不撕它从NHibernate在Silverlight类库?我在互联网上没有发现在Silverlight中使用NHibernate标准API的证据,这有点奇怪,它不可能从NHibernate中剥离出来,或者它没有意义?为什么不使用它?对我来说,这看起来是一个很好的解决方案,比自己编写API要好。
在客户端建立查询不是一个好主意
-
包含查询生成器并允许用户在客户端编写自定义复杂查询的3d方DataGrid控件(Telerik, DevExpress, inffragistics)怎么样?
这听起来像陈词滥调。人们只是不断地重复它,因为他们在某处读到过,但他们不知道为什么。
我不同意这一点,我认为在客户端编写自定义复杂查询的能力是面向数据的业务线应用程序的合理需求。
添加到peer的答案中-获取在客户端构建的查询是绝不是的好主意。内联网或任何其他类型的应用程序。
QueryObjects 是的方法。
你可以在客户端(比如(Name like '%blah' or LastName like 'something') and Id > 5
)创建表达式,在服务器端——使用。net的表达式树(参见这里和这里),或者实现你自己的引擎(一般想法)。