ASP.NETMVCAPIでモデルを解析する際に問題が発生しました
これは私のAPIコントローラーです:
public class UserController : ApiController
{
// Hent liste af personer
public IEnumerable<UserModel> Get()
{
return new UserModel[] { new UserModel(), new UserModel() };
}
// Hente enkelt person
public UserModel Get(int id)
{
return new UserModel();
}
// Opret person
[ValidationActionFilter]
public CreateUserRespose Post([FromBody]UserModel model)
{
CreateUserRespose rs = new CreateUserRespose();
return rs;
}
// Rediger person
public UserModel Put(int id, [FromBody]UserModel model)
{
return new UserModel();
}
// Slet person
public UserModel Delete(int id)
{
return new UserModel();
}
}
}
そしてUserModel:
public class UserModel
{
[Required]
[StringLength(500)]
public String FristName { get; set; }
[Required]
[StringLength(500)]
public String LastName { get; set; }
[Required]
[StringLength(250)]
public String Email { get; set; }
[Required]
public String MatrikelId { get; set; }
}
Fiddlerを介して次の本文でPostコマンドを呼び出すと
FirstName=Fistname MiddleName&LastName=SomeName&Email=email@email.us&MatrikelId=1234
アクションPostは呼び出されますが、モデルはnullであり、ModelState.IsValidはtrueです。本文でデータを送信しない場合も、同じことが起こります。私はここで何が間違っているのですか?
更新:データをFiddlerではなくjsonとして送信しようとしました:
User-Agent: Fiddler
Host: localhost:51268
Content-Length: 102
Content-type: application/json
{"FristName":"Kasper asdasd","LastName":"asdasdasd","Email":"asdaasd@asdasd.us","MatrikelId":"132456asd"}
しかし、モデルがnullの場合、モデルの状態は無効であってはなりませんか?