私は3つのパラメータ(param1、param2、param3)で構成されるAPIを持っています。電子メールパラメータのために働いていないので、 '@'文字。しかし正常に正常に動作します。私の下のコードをチェックしてください。パラメータが@文字で構成されている場合、Web APIが呼び出されない
APIコントローラ
public class ApiPINVerificationController : ApiController
{
public ApiPINVerificationController()
{
}
[HttpPost]
public IHttpActionResult GetStudentByPIN(string param1,string param2,string param3)
{
//Balance Search Audit Log Entry
SLAF.DataAccessManager.DTO.BalanceSearchLog balanceSearchLog = new DataAccessManager.DTO.BalanceSearchLog
{
PIN=param1,
CellPhone=param2,
Email=param3
};
APIManager.InsertBalanceSearchLog(balanceSearchLog);
return Ok(new
{
Student=objStudent
});
}
}
WebApiConfig
public static class WebApiConfig
{
public static string UrlPrefixRelative { get { return "~/Api"; } }
public static void Register(HttpConfiguration config)
{
//config.Formatters.Add(new BsonMediaTypeFormatter());
config.Formatters.Remove(config.Formatters.XmlFormatter);
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{action}/{param}",
defaults: new { param = RouteParameter.Optional }
);
config.Routes.MapHttpRoute(
name: "Api2",
routeTemplate: "api/{controller}/{action}/{param1}/{param2}"
);
config.Routes.MapHttpRoute(
name: "Api3",
routeTemplate: "api/{controller}/{action}/{param1}/{param2}/{param3}"
);
}
}
あなたはこのようなパラメータを受け取ることができません,,あなたはJSONパラメータまたは本文の内容パラメータを使用することができ –