0
モデルがデータベースから読み取られたオブジェクトに対して正しいことを確認する方法を教えてください。Entity Framework 4.1コードファースト - コントローラ内のオブジェクトモデルを検証する
var myModelObject = theDB.myDbContext.myModelObject.Find(1234);
ここで、モデルのルール/属性によって正しいかどうかを制御したいと思いますが、どうですか?
は、あなたがこのバリデータについてもう少し詳しく説明してくださいすることができ、そしてそれがどのように動作するか:あなたは、データの注釈に基づいて実行、検証したい場合は
手動では使用できますか? 上記の例のようにテストしたところ、うまく動作しないようです: var u = new Ucenik(); db.Ucenici.Add(u); var valrez = db.GetValidationErrors(); var results =新しいリスト(); varコンテキスト=新しいValidationContext(u、null、null); bool isValid = Validator.TryValidateObject(u、context、results、true); –
Zaak
Ucenikクラスはその属性にIsRequiredを持っているので、dbContextとGetValidationErrorsにそれを追加すると正常に動作しますが、属性が見つからないと3つのエラーが発生します。 しかし、Validatorはエラーを返しません。それは間違って設定されていますか? 私のUcenikクラスは、まずコードから来ますが、既存のデータベースを使用しているため、*パブリッククラスUcenikConfiguration:EntityTypeConfiguration *にバリデーションルールを追加しました。違いがありますか? –
Zaak
Validatorクラスは、データ注釈を使用する場合にのみ機能します。流暢なマッピングでは機能しません。 –