0

VisitLabResult私は、同じ名前を持つ 2 つのレコードを持つべきではないという名前のオブジェクトを持っているLabTestID and VisitIDので、この検証を強制するために、[remote]次のように LabTestID プロパティで検証を作成しました:-

        [Required]
        [Remote("checkexsistence", "VisitLabResult",AdditionalFields= "VisitID")]
        public int LabTestID { get; set; }

次のアクションメソッドを呼び出します:-

public JsonResult checkexsistence(int LabTestID, int VisitID)
        {

    var result = repository.checkexsistence(LabTestID, VisitID);
    if (result == null)
    {

        var type = true;
        return Json(type, JsonRequestBehavior.AllowGet);

    }
    else {
        var type = false;
        return Json(type, JsonRequestBehavior.AllowGet);
    }
}

リポジトリの方法は次のとおりです:-

 public VisitLabResult checkexsistence(int labtestid, int visitid =20)
            {
                return (from vlr in entities.VisitLabResults
                       where (vlr.VisitID == visitid && vlr.LabTestID == labtestid)
                       select vlr).FirstOrDefault();}

現在、データ注釈内visitidで言及されているパラメーターは、クエリ文字列が次のように見える CreateGet アクション メソッドを呼び出すためのクエリ文字列で見つかります。AdditionalFields= "VisitID"Remote/VisitLabResult/Create?visitid=20

しかし、上記はまったく機能していません。visitid と labtestid が既に存在する場合、エラーは表示されません。どうすればこれを修正できますか???

4

2 に答える 2

0

DataAnnotationsは、データ自体が潜在的に有効であることを確認するためのものです。DataAnnotationを使用して、データベース内の残りのアイテムの一意性を判断しようとしてはなりません。本当にこのルートをたどりたいのであれば、カスタムバリデーターの作成を検討することをお勧めします。

于 2012-04-30T02:27:34.553 に答える
0

フィールド VisitID はモデル クラスの一部 (プロパティ) ですか? 追加フィールドは、モデル クラスの一部である必要があります。たとえば、フィールド Id がモデル (LabTestID プロパティがある場所) にある場合、LabTestID リモートに次のように注釈を付けます。

[Remote("checkexsistence", "VisitLabResult",AdditionalFields= "Id")]
于 2014-01-21T15:01:44.237 に答える