好吧,我已经在WCF上和XPO做了几天的斗争了,而且我似乎没有任何进展。我觉得WCF很新,即使我已经在一些项目中使用过它。我使用WCF的正常方式是:创建服务库、托管应用程序或windows服务和客户端。在客户机中,我添加了一个service引用,让VS在客户机中自动创建我的类来使用该服务。到目前为止还挺容易的,而且每次都起作用了。
之后,我只会继续向服务器添加更多的服务,更新服务引用,等等。
现在我决定更多地利用我的(目前不活跃的.)DevExpress订阅并使用XPO,这对简单的应用程序很有吸引力,但直到今天我都尝试在wcf上使用它们,我完全不知道自己做错了什么;
首先,我使用DevExpress OData服务向导创建了一个支持ORM的OData服务(所选的oData5.6),设计了我的实体,这就像魅力一样。然后,我为我的所有实体添加了简单函数(如注释中提到的),启动了服务,并试图使用发现服务端点。在所有尝试中,50%的尝试中,浏览器给了我一些关于响应中无效XML格式的错误,而另外的50%只有ORM对象集合的接口,但是根本没有函数。(我甚至在那里添加了一个"public int TestFunc(int arg1,int arg2) { but arg1+arg2;}“,但它也没有出现)
几天后删除,从头开始创作,阅读和扔东西到我的墙上.我尝试了以下示例,因为对我来说它似乎是最“最新的”:http://www.devexpress.com/Support/Center/Example/Details/E4389。
但是我甚至无法让这个示例在用示例运行程序打开它之后立即运行(并且用odata和空间5.0/5.6.修复了引用问题.),它抛出了一个关于"SetCategoriesFiltering“资源的异常。我并没有试着去修复它,但是我太沮丧了。
所以我在这里的基本问题是:我在这里做错了什么,VS2010 (SP1)不能创建/运行这些类型的服务吗?我的方法对XPO是错误的吗?没有教程/演示项目对我有效(除了将整个数据库公开为WCF服务外),但我认为这不是一个好主意。还是现在必须这样做?)
浪费这么多时间而不知道发生了什么(或者更好的是没有发生什么事情……)真是令人沮丧。我知道我没有发布我一直在使用的任何示例项目或代码,因为即使是来自XPO的开发人员的基本示例也无法“开箱即用”。
我希望有人能在这里帮助我,因为我真的不知道我下一步可以尝试什么。
:使用SP1 DevExpress "DXperience“套件的Windows 7终极2010 (我最后一次获得许可的版本是13.1.10)当我打开示例项目时所有引用都很好,因此所有OData/EDM程序集似乎都在其适当的版本中可用
发布于 2014-05-20 08:22:39
似乎您以前从未使用过WCF数据服务。它们与简单的WCF服务略有不同,在WCF服务中,您只能公开服务操作,仅此而已。
DevExpress OData服务向导创建OData数据服务。在将服务操作添加到WCF数据服务之前,我建议您了解更多关于WCF数据服务的内容,并决定到底是要添加服务操作还是使用WCF数据服务。
除了MSDN教程之外,很多文章可以在互联网上找到:
https://stackoverflow.com/questions/23745187
复制相似问题