私は、リソースの製品と私のAPIを定義している:JSONリクエスト以下Asp.netウェブAPI入力プロパティタイプ
public class Product
{
public int Id { get; set; }
}
提出:
- { "ID":4}
- { " Id ":" 4 "}
いずれの場合も成功します。バインディング中に文字列が有効な整数である場合に例外をスローしないことが期待されますか?
私は、リソースの製品と私のAPIを定義している:JSONリクエスト以下Asp.netウェブAPI入力プロパティタイプ
public class Product
{
public int Id { get; set; }
}
提出:
いずれの場合も成功します。バインディング中に文字列が有効な整数である場合に例外をスローしないことが期待されますか?
バインディングでは、これらのタイプを自動的に解決できます。 Int32.MaxValue(2,147,483,647)より大きい値がリスト内にある場合にのみ問題になります。
型を強制する解決策は何でしょうか? – voutrin
私が言ったように、あなたはモデルバインダーがそれを変換することができるので、4から4の整数に "4"を強制する必要はありません。しかし、Int32への変換を強制したい場合は、カスタムモデルバインダーを作成し、Convert.ToInt32(value)を適用して、変換を実行できます。 –
いいえです。モデルバインダーは文字列 "4"を使用して整数Idプロパティにバインドできます。 – Shyju