webservice传值并返回结果求教
代码一实例化:
public class Material_in
{
public string mtrl_prod_id { get; set; }
public string mtrl_prod_dsc { get; set; }
public string mtrl_cate { get; set; }
public string mtrl_erp_code { get; set; }
public string mtrl_unit { get; set; }
public string min_safe_qty { get; set; }
public string max_safe_qty { get; set; }
public string rtn_code { get; set; }
//此项为返回值
public string rtn_mesg { get; set; }
//此项为返回值
}
代码二 webservice调用方法:
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public string GetMaterial_in() {
string sql = "SELECT TOP 2 FNumber,FName,'HH无此定义' dalei,FModel,FUnitID,FQtyMin,FQtyMax FROM dbo.t_ICItem";
DataTable dt = SqlHelper.ExecuteDataset(SqlHelper.GetConnection(),CommandType.Text,sql).Tables[0];
int 行数 = dt.Rows.Count;
Material_in[] 序列化内容=null;
if (行数 > 0) {
序列化内容 = new Material_in[行数];
}
int i = 0;
foreach (DataRow dr in dt.Rows)
{
序列化内容[i] = new Material_in();
Console.WriteLine(dr["FNumber"].ToString());
序列化内容[i].mtrl_prod_id = dr["FNumber"].ToString();
序列化内容[i].mtrl_prod_dsc = dr["FName"].ToString();
序列化内容[i].mtrl_cate = dr["dalei"].ToString();
序列化内容[i].mtrl_erp_code = dr["FModel"].ToString();
序列化内容[i].mtrl_unit = dr["FUnitID"].ToString();
序列化内容[i].min_safe_qty = dr["FQtyMin"].ToString();
序列化内容[i].max_safe_qty = dr["FQtyMax"].ToString();
i++;
}
return new JavaScriptSerializer().Serialize(序列化内容);
}
代码三,调用方法结果测试:
HHMESWEBSERVICE.HHMESWEBSERVICESoapClient HHMES= new HHMESWEBSERVICE.HHMESWEBSERVICESoapClient("HHMESWEBSERVICESoap");
string json = JsonConvert.SerializeObject(HHMES.GetMaterial_in());
MessageBox.Show(json);
JArray ja = (JArray)JsonConvert.DeserializeObject(HHMES.GetMaterial_in());
foreach (JObject item in ja)
{
MessageBox.Show(item["mtrl_prod_id"].ToString());
MessageBox.Show(item["mtrl_prod_dsc"].ToString());
}
结果:
以上处理后,能够完整调用接口,并输出相应的值
问题:
实例化中的:rtn_code 和rtn_mesg 需要给予一个返回值
这个如何写?
最多只能给400分了,分不够可以另开贴再加
望指教