私の WebApiConfig.cs
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
config.EnableQuerySupport();
}
}
私のコントローラーファイルは次のとおりです。
namespace myApp.Data
{
public class AccountController : ApiController
{
public List<User> XGetUsers()
{
List<User> Users;
using (Entities db = new Entities())
{
var users = from u in db.Users select u;
Users = users.ToList();
}
return Users;
}
// GET api/<controller>/5
public string Get(int id)
{
return "value";
}
}
}
しかし、localhost:51255/api/Account/XGetUsers を呼び出そうとすると、常に 400 エラーが発生します。
{"メッセージ":"要求が無効です。","MessageDetail":"パラメーター ディクショナリには、メソッド 'System.String Get(Int32) の null 非許容型 'System.Int32' のパラメーター 'id' の null エントリが含まれています。 ' in myApp.Data.AccountController'. オプションのパラメーターは、参照型または null 許容型であるか、オプションのパラメーターとして宣言する必要があります。"}
すべての呼び出しがメソッド Get(int id) に送られているようです。なにが問題ですか?