我有一个使用WCF的项目工作正常,但我将代码移动到另一台机器,现在它不会编译。我得到像这样的代码行的错误,我实例化一个类,然后调用服务客户端:
FlooringReportingServiceClient.FlooringReportingServiceClient client = new FlooringReportingServiceClient.FlooringReportingServiceClient();
BusinessCollectionResponse<Store> storeCollectionResponse = client.GetStoreList((bool)Session["IsAdmin"]);
错误会说
无法隐式转换类型'MyCompany.Presentation.FlooringReporting.FlooringReportingServiceClient.BusinessCollectionResponseOfRoleW6bohhDP' 至 'MyCompany.Architecture.Framework.Common.BusinessCollectionResponse'
字符串“OfRoleW6bohhDP”附加了谁知道在哪里。
我知道大约一年前,我正和一个关于WCF的人谈话(我知道,这是一个无聊的派对),他提到了一些事情,当随机字母被附加到一个类名的末尾然后你必须做“x”来修复它。但我不记得那是什么,我在网上找不到这样的东西。我不是WCF的专家,我正在使用其他人的框架,如果这是一个简单的问题,请原谅我。
答案 0 :(得分:0)
似乎名称相似的类型不匹配。在客户端应用程序中,您是否有对包含WCF数据协定(WCF操作的参数或返回类型)的库(项目)的引用?
如果这样做,您可能会在添加服务引用时自动生成的实际类型及其代理不匹配。
在添加或更新(配置服务引用)服务引用时,您可以告诉visual studio是否重用引用库中的类型而不是生成新类型。