Dictionary 使用webservice返回字典
我正在寻找一些帮助,在Web服务中使用csv文件填充字典,但是我无法返回结果 我试图将字典分成两个独立的列,这似乎有效,但我无法返回值,因为有两个而不是一个 代码如下:Dictionary 使用webservice返回字典,dictionary,c#-3.0,streamreader,Dictionary,C# 3.0,Streamreader,我正在寻找一些帮助,在Web服务中使用csv文件填充字典,但是我无法返回结果 我试图将字典分成两个独立的列,这似乎有效,但我无法返回值,因为有两个而不是一个 代码如下: { StreamReader streamReader = new StreamReader("T:/4 Year WBL/Applications Development/Coursework 2/2b/Coursework2bwebservice/abrev.csv"); [WebMethod] p
{
StreamReader streamReader = new StreamReader("T:/4 Year WBL/Applications Development/Coursework 2/2b/Coursework2bwebservice/abrev.csv");
[WebMethod]
public string Dictionary()
{
string line;
Dictionary<string, string> dictionary = new Dictionary<string,string>();
while ((line = streamReader.ReadLine()) !=null)
{
string[] columns = line.Split(',');
dictionary.Add(columns[0], columns[1]);
return dictionary;
}
}
{
StreamReader StreamReader=新的StreamReader(“T:/4年WBL/应用程序开发/课程作业2/2b/课程作业2Bwebservice/abrev.csv”);
[网络方法]
公共字符串字典()
{
弦线;
字典=新字典();
而((line=streamReader.ReadLine())!=null)
{
string[]columns=line.Split(',');
添加(列[0],列[1]);
返回字典;
}
}
我收到错误“无法隐式转换类型System.Collections.Generic.Dictionary”
任何想法都很好,谢谢你抽出时间
public string Dictionary()
正在返回错误的签名。您需要返回实际的字典:
public Dictionary<string, string> Dictionary()
似乎有点奇怪。您还在循环中返回您的词典。让我们试试:
line = streamReader.Readline();
while (line !=null)
{
string[] columns = line.Split(',');
dictionary.Add(columns[0], columns[1]);
line = streamReader.Readline();
}
return dictionary;
综上所述,在web方法中返回实际的dictionary对象可能没有多大意义。您真正想要的是一个XML序列化的字典或列表。请参阅此处:了解更多信息。非常感谢,这非常有帮助并解决了问题。尽管正如您所说,由于web服务不接受dictionary对象,这是不正确的屁股。我将查看序列化xml字典并从那里开始。再次感谢您。
line = streamReader.Readline();
while (line !=null)
{
string[] columns = line.Split(',');
dictionary.Add(columns[0], columns[1]);
line = streamReader.Readline();
}
return dictionary;