我试图创建一个只包含一个返回Tuple项的函数的简单Web服务,问题是在部署ASMX文件后出现此错误:
导致此问题的功能是:
[WebMethod]
public Tuple<String[],String> BeginTest(String url, String ip_public, int port_external, String ip_internal, int port_inner, bool isInner)
{
Ping ping = new Ping();
String errorMSG = "Null";
String[] info = new string[3];
PingReply pingreply = null;
try
{
if (isInner)
{
pingreply = ping.Send(ip_internal);
}
else
{
pingreply = ping.Send(ip_public);
}
info[0] = pingreply.RoundtripTime.ToString() ;
info[1] = pingreply.Options.Ttl.ToString();
info[2] = pingreply.Buffer.Length.ToString();
}
catch (Exception err)
{
errorMSG = err.Message.ToString();
}
return new Tuple<string[], string>(info, errorMSG);
}
答案 0 :(得分:2)
创建自己的元组类,名为MyTuple,它具有无参数构造函数。
public class MyTuple<TypeParameter1, TypeParameter2>
{
public TypeParameter1 Value1 { get; set; }
public TypeParameter2 Value2 { get; set; }
public MyTuple()
{
}
public MyTuple(TypeParameter1 value1, TypeParameter2 value2)
{
Value2 = value2;
Value1 = value1;
}
}
更多信息: https://www.codeproject.com/Articles/1052516/Csharp-Generics-for-beginners-Part