【发布时间】:2017-03-15 02:30:01
【问题描述】:
mi wcf 服务有一个名为 Richiedicarta 的函数,它返回一个列表,但是当我在我的客户端中实现它时,它说它不能隐式转换类型 system.collections.generics.List 中的类型字符串。 这是WCF函数代码
public List<string> richiedicarta(int utilcode)
{
List<string> card = new List<string>();
Random rand = new Random();
switch (utilcode)
{
case 0:
for (int i = 0; i < 4; i++)
{
int indice = rand.Next(0, max-1);
card.Add(carta[indice]);
carta.Remove(carta[indice]);
max--;
return card;
}
break; //prima mano
case 1: briscola = carta[rand.Next(0, max-1)]; card.Add(briscola); max--; break; //briscola
case 2: if (carta.Count == 0) { card.Add(briscola); } else { card.Add(carta[rand.Next(0, max-1)]); } max--; break; //nuova mano
}
return card;
}
这是客户端功能代码
static List<String> ricevicarte(int param)
{
List<string> carte = cl.richiedicarta(param); // here it gives that error
List<String> cards = null;
for(int i=0; i<3; i++)
{
if(carte[i]==" ")
{
carte[i] = null;
}
else
{
cards.Add(carte[i]);
}
}
return cards;
}
cl 是我的 ServiceClient 实例
【问题讨论】:
-
错误是什么?
-
客户端的 WCF 代理合约是什么样的?看起来是合同不匹配。
-
无法隐式转换类型 system.collections.generics.List
中的类型字符串。抱歉,我的问题写得不好