我已经在wcf中编写代码来从sql数据库中获取数据。以下是我的代码
string SP_STATE = "SP_STATE";
Select selectOBJ = new Select();
DataTable dt = selectOBJ.selectSTATE(SP_STATE);
string jsonData= JsonConvert.SerializeObject(dt);
return jsonData;
我已经在asp.net中编写代码来从wcf post service获取数据,该服务被添加为服务引用但是当我从服务调用时..它给了我错误(附加信息:出现错误反序列化System.String类型的对象。从命名空间''期望结束元素'root'。 从名称空间'')找到元素'GetStateListResult'
以下是我的代码
MemoryStream stream = new MemoryStream(Encoding.UTF8.GetBytes(doctorServiceObj.GetStateList()));
STATELISTRESULT objStudent = (STATELISTRESULT)jsonSer.ReadObject(stream);
Response.Write(string.Format("Name = {0} and Address = {1}", objStudent.STATE, objStudent.ROW_ID));
请建议我解决方案
答案 0 :(得分:0)
请在服务器端尝试:
MemoryStream stream = new MemoryStream(Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject( doctorServiceObj.GetStateList())));
那么你可以像这样在客户端对它进行deserilze:
var response = Newtonsoft.Json.JsonConvert.DeserializeObject<YourType>(responseString);