C# 为什么我在.NET Web服务中使用JSON获得错误StreamReader?
我想使用带有JSON的C#创建一个.NET Web服务。但我在Web服务上的return语句中出现错误,C# 为什么我在.NET Web服务中使用JSON获得错误StreamReader?,c#,.net,json,web-services,C#,.net,Json,Web Services,我想使用带有JSON的C#创建一个.NET Web服务。但我在Web服务上的return语句中出现错误,无法将类型“string”隐式转换为“Model.User” 如何解决该错误行 这是我的WebService.asmx: [OperationContract] public Model.User GetUser(string ccduser) { Model.User user = new Model.User(); string connec
无法将类型“string”隐式转换为“Model.User”
如何解决该错误行
这是我的WebService.asmx:
[OperationContract]
public Model.User GetUser(string ccduser)
{
Model.User user = new Model.User();
string connectionString = ConfigurationManager.ConnectionStrings["ConnStr"].ConnectionString;
using (SqlConnection connection = new SqlConnection(connectionString)) {
string sql = "Select * from ms_webuser where ccduser = '" + ccduser + "'";
connection.Open();
SqlCommand command = new SqlCommand(sql, connection);
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{
user.cnmuser = reader["cnmuser"].ToString();
}
}
MemoryStream stream = new MemoryStream();
DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(Model.User));
serializer.WriteObject(stream, user);
stream.Position = 0;
StreamReader streamReader = new StreamReader(stream);
return streamReader.ReadToEnd(); //here is the error red line
}
这是我的模型。用户类:
namespace Model
{
public class User
{
private string _ccduser;
private string _cnmuser;
public string ccduser
{
get { return _ccduser; }
set { _ccduser = value; }
}
public string cnmuser
{
get { return _cnmuser; }
set { _cnmuser = value; }
}
}
}
之所以会出现此错误,是因为该方法返回一个字符串,并且您已经声明了要返回
模型的方法。User
要解决此问题,您应该返回要返回的用户,或者更改方法以返回字符串 谢谢@MAV,现在它可以工作了,我把方法改成
String