注意してください:同様の質問への回答へのリンクを使用して、自分の質問に回答しました。許可されたら、その答えを受け入れます(その間に誰かがより良い答えを思いつかない限り)。
データベース列が定義されていますNVARCHAR(1000) NOT NULL DEFAULT(N'')
。つまり、デフォルト値が空白のnull不可のテキスト列です。
Linq-to-SQL クラス デザイナーによって生成されたモデル クラスがあります。これは、プロパティをnull非許容として正しく識別します。
私はTextAreaFor
その物件について私の見解を持っています。コントローラーで使用UpdateModel
して、フォームから値を取得し、モデル オブジェクトにデータを入力しています。
Web ページを表示してテキスト領域を空白のままにUpdateModel
すると、プロパティをNULL
空の文字列ではなく に設定するように要求されます。( を呼び出す前にコードで値を空白に設定してUpdateModel
も、 で上書きされますNULL
)。もちろん、これにより、その後のデータベースの更新が失敗します。
を呼び出した後にそのようなすべてのプロパティをチェックできましたが、それはばかげているようです-確かにもっと良い方法があるに違いありませんか?NULL
UpdateModel
このような単純なシナリオにカスタム モデル バインダーが必要だなんて言わないでください...!