我正在 WCF 中创建 Rest 服务。我有一个GetUserDetails
接受三个参数的方法GetUserDetails/?username={username}&mobileno={mobileno}&imeino={imeino}
。
但我无法解析这个编码的 url:
localhost:9005/Service.svc/GetUserDetails?request_header=null&request_body=%7B%22mobileNo%22%3A%229827098270%22%2C%22username%22%3A%22member%22%2C%22imeiNo%22%3A%22111111%22 %7D
由带有 json 格式参数的 Get Request 组成。以下是我的代码详细信息:
[ServiceContract]
public interface IService
{
[OperationContract]
[FaultContract(typeof(string))]
[WebInvoke(Method = "GET", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.WrappedRequest, UriTemplate = "GetUserDetails/?username={username}&mobileno={mobileno}&imeino={imeino}")]
UserModel GetUserDetails(string username, string mobileno, string imeino);
}
public class Service : IService
{
public UserModel GetUserDetails(string username, string mobileno, string imeino)
{
try
{
con = new SqlConnection(strcon);
if (con.State == ConnectionState.Open)
{
con.Close();
}
SqlCommand cmd = new SqlCommand("SP_AND_userprofiledata",con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@username", username);
cmd.Parameters.AddWithValue("@mobileNo", mobileno);
cmd.Parameters.AddWithValue("@imeiNo", imeino);
da = new SqlDataAdapter();
da.SelectCommand = cmd;
ds = new DataSet();
da.Fill(ds);
}
}
任何帮助是极大的赞赏。