6

データベースに新しい電子メールを作成するアクションがあります。コードは次のようなものです:

[ValidateModel]
public HttpResponseMessage Post(string username, [FromBody] EmailDTO email)
    ...
    this.repository.Add(username, email)

しかし、API ユーザーは「Id」プロパティを設定でき、データベースで競合が発生します。カスタム モデル バインダーを作成したり、DTO のコンストラクターを変更したりせずにバインドするときに、'Id' プロパティを無視できますか? Bind(Exclude='...') と似ていますが、WebApi では?

コントローラーのアクションで大量割り当てを防止する既知の方法は何ですか?

4

1 に答える 1

-2

以下の属性でデシリアライゼーションを制御できます。この属性は、プロパティーをシリアライゼーションおよびデシリアライゼーションのプロセスから除外します。

[XmlIgnore]
[JsonIgnore]
public int ID { get; set; }
于 2014-03-22T08:48:51.503 に答える