人々が既にこの質問をしているのか、 の人がこの問題を見ていないのかわかりません。Asp.net MVCフォームの検証関連
私はそれぞれの作成ビューに対して強いタイプのビューを作成しています。
LINQクラスのエンティティの部分クラスを作成することで、サーバー側のフォームを検証しています。
public IEnumerable<RuleViolation> GetRuleViolations()
{
if (String.IsNullOrEmpty(Name))
yield return new RuleViolation("Name is Required", "Name");
if (String.IsNullOrEmpty(Date.ToString()))
yield return new RuleViolation("Date is Required", "Date");
yield break;
}
私のコントローラのアクションのように機能を追加することにより
は alt text http://www.scottgu.com/blogposts/mvcpreview5/step15.png
問題のように構成されています
名フィールドの長さは、VARCHAR2(10)であり、ユーザは超え名を入力した場合この制限は、製品(画像参照)のオブジェクトはのようになります。の文字列は空白です。
その他の問題以上のようなもの日付ユーザーが日付を入力しない場合、オブジェクトには1/1/0001のような日付が付きます。
要約:このメソッドを使用する必要がありますか? FormColletionまたはRequest.Formを使用してすべての要素を取得するなどのメソッドを使用する...
カム私にそれのための最善の提案を教えてください?
また、この問題に対する潜在的な解決策がたくさんありますJustin_etheredge's post
(何かは現時点では来ています...)わかりますか? MS EFのこの問題について私にはわかりません... – Vikas
はい、Microsoft Entity Frameworkでは文字列についてこの問題がありませんが、提案したとおりにGetRuleViolation()というMy funtionで確認できます。 。あなたはこれについて何を言っているのですか?今私はデモプロジェクトを完了させています。 LINQtoSQLをEntityフレームワークに変更する必要がありますか?それは危険なことでしょうか?または、あなたが言ったように論理層に入ることができますか?もしそうなら、もっと精巧にできますので、MVCプロジェクトのベースラインを改善するのに役立ちます。 – Vikas