【发布时间】:2014-06-27 08:49:19
【问题描述】:
在 WCF 项目中,我使用 string[] 函数并通过添加服务引用从控制台应用程序调用该 string[] 函数。但显示错误:
无法在控制台应用程序中将类型“ArrayofString”隐式转换为“string[]”。
如果我重新创建服务引用,有时我无法解决这个问题,它会显示如上所述的错误。下面给出示例代码
public string[] SET_PROV_FROM_INVOICE(int type, int cust_id, int PLAN_ID,
string INVOICE_ID, string IN_PARAMETER, string IN_FLD_ACTION,
string GET_VALUE, ref string RTN_VALUE) // invoice_id = Customer invoice table id , Cust_ID = Customer ID, type = 4 for Prov TagK
{
System.Collections.ArrayList PROV_result = new System.Collections.ArrayList();
return PROV_result.ToArray(typeof(string)) as string[];
}
string[] ret_prov_tag = obj.SET_PROV_FROM_INVOICE(4, Convert.ToInt32(cust_id), 0,
IN_FLD_INVOICE_ID, "", "Create",
SET_VALUE, ref Prov_Rtn);
【问题讨论】:
-
但是您所指的服务引用调用在哪里?
-
在控制台应用程序中使用 obj 调用该函数的最后一行
-
但是这段代码可以编译,一定有什么你没有告诉我们的。
PROV_result是否来自服务调用? -
最后一行,服务引用项目函数,内部函数添加数组列表中的值,最后通过转换数组列表返回字符串[]
标签: c# wcf console-application