我正在尝试使用返回表单中自定义列表的WCF服务List<StockData>.
以下是方法签名IService.cs:
[OperationContract]
List<StockData> orderStockData(string compName1, string compName2, string compName3);
Run Code Online (Sandbox Code Playgroud)
但是当我尝试通过服务引用在我的网站中引用它时:
List<StockData> list = new List<StockData>();
list = myProxy.orderStockData(txtinput1.Text, txtinput2.Text, txtinput3.Text);
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
无法将类型'ServiceReference1.StockData []'隐式转换为Systems.Collections.Generic.List
解决这个问题的任何帮助都会很棒.谢谢!
在了解Silverlight 2中的WCF服务时,作者David Betz解释了如何在不在客户端应用程序中添加服务引用的情况下调用Web服务.我有几周的WCF经验,所以这篇文章是我的头脑.特别是,虽然作者给出了很多代码片段,但并没有说明会发生什么.在文章中,他为web.config文件提供了两个不同的代码片段,但没有说明发生了什么.
查看源代码,有四个项目和两个web.config文件.
到目前为止,我一直在使用Web服务的一个项目的标准Silverlight项目配置和Silverlight客户端的一个项目.
首先,本文中描述的过程是否适用于标准的两个项目配置?我认为会.
其次,有没有人知道一个更简单的例子?我对此很感兴趣,但是想要在创建新的Silverlight项目时生成默认的两个项目设置中的源代码,或者找到如何执行此操作的逐步描述(例如,添加一个类调用xxx.cs并添加此代码...,打开web.config并添加这些行......)
非常感谢Mike Thomas
我注意到在VS2010中使用"添加服务引用"时会创建大量文件.其中一个文件是Reference.cs,它为服务契约创建一个ClientBase.
因此,我想知道VS创建的大量额外文件是否有任何优势,或者我可以自己使用ClientBase并跳过"添加服务引用"选项.
我应该注意到,在我的情况下,双方都在我的控制之下.