我是Web服务的新手,我实际上正在尝试学习如何在C#中开发一个。 我在我的Web服务中有以下方法,当我测试它时,它实际上显示了一个int数组。
[WebMethod]
public int[] FindID(string str1,string str2)
{
Customer obj = new Customer();
obj.FindMatch(str1,str2);
return obj.customer_id;
}
现在在我的Web应用程序中,我有一个按钮,代码如下:
Dim obj As localhost.Service = New localhost.Service
Dim str1 As String = Session("str1")
Dim str2 As String = Session("str2")
Response.Write(obj.FindID(str1, str2))
问题是只显示数组中的第一个值。有人可以帮我解决这个问题吗?
答案 0 :(得分:0)
您还可以使用带有分隔符和字符串数组的String.Join()
http://msdn.microsoft.com/en-us/library/57a79xd0.aspx,并返回包含数组内部原始字符串的单个字符串,并以分隔符分隔。
答案 1 :(得分:0)
这可以非常简单地实现:
Console.WriteLine(", ", string.Join(obj.FindID(str1, str2)));
答案 2 :(得分:-1)
Console.Write
仅显示单个值,如整数,浮点数或字符串。它永远不会遍历数组来显示每个值。
相反,您可以在数组中的每个条目上调用Console.Write
。
foreach (int value in obj.FindID(str1, str2))
{
Console.WriteLine(value.ToString());
}
请注意,调用Console.Write
资源非常昂贵。如果您需要显示一个非常长的数组的值,可能会使用StringBuilder class,然后调用Console.Write
一次,从而获得更好的结果。
StringBuilder stringBuilder = new StringBuilder();
foreach (int value in obj.FindID(str1, str2))
{
stringBuilder.AppendLine(value.ToString());
}
// Call this once.
Console.Write(stringBuilder.ToString());