簡體   English   中英

驗證外鍵的唯一輸入字段

[英]Validate a unique input field from a foreign key

我有一個帶有兩個字段rubriqueIdrubriqueintermediareId的表rubriqueintermediare ,這是來自表Rubrique的外鍵。

我的表Rubriqueintermediare有一個來自rubrique表的libelle字段的列表框。

當我添加新的rubriqueintermediare時,我不能在rubriqueintermediare列表中添加現有的。

當表rubriqueintermediare只有rubriqueintermediareIdrubriqueId ,該rubriqueintermediare在SQL Server中自動遞增,該如何進行驗證。 這是我的方法添加到rubriqueintermediare的控制器中:

[HttpPost]
    public JsonResult Save([DataSourceRequest] DataSourceRequest dsRequest, RubriqueIntermediareVM vm)
    {
        try
        {
            ViewData["CodeRubrique"] = new SelectList(RefDataManager.GetRefData<RubriqueVM>(), "RubriqueId", "CODELIBELLE");
            if (ModelState.IsValid)
            {
                RubriqueIntermediareVM rubi = ServiceApplicatif.Save(vm);
                IEnumerable<RubriqueVM> rubrique = RefDataManager.GetRefData<RubriqueVM>() as IEnumerable<RubriqueVM>;
            }
            DataCache dataCache = new DataCache(CurrentSecurityContext.TenantID);
            dataCache.DropDataCache<RubriqueIntermediareVM>();
            return Json(new[] { vm }.ToDataSourceResult(dsRequest, ModelState));
        }
        catch (Exception ex)
        {
            LoggerRubriqueIntermediare.Error(string.Format("Exception : {0}", ex.Message.ToString()));
            throw new Exception("Erreur lors de l'enregistrement.");
        }
    }

您必須對數據庫進行此驗證

入店手續

if exists( select Count(id) 
           from Rubriqueintermediare 
           where @name=rubricname) -- Assuming rubricname is column  
begin
    --return field as you want 
END
Else
Begin
    --Insert as you want
End

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM