我有一个表 Rubriqueintermediare ,其中 rubriqueIntermediareId 和 rubriqueId 作为表 Rubrique 中的外键:所以在我的rubrique intermediare我有一个rubrique的列表框我想比较viewdata列表值与选择的dropdownlist,以便阻止添加相同的rubriqueintermediare: 我尝试了这段代码,但它不起作用:
[HttpPost]
public JsonResult Save([DataSourceRequest] DataSourceRequest dsRequest, RubriquepointageVM vm)
{
try
{
IEnumerable<RubriqueVM> listRubrique = RefDataManager.GetRefData<RubriqueVM>() as IEnumerable<RubriqueVM>;
ViewData["CodeRubrique"] = new SelectList(RefDataManager.GetRefData<RubriqueVM>(), "RubriqueId", "CODELIBELLE");
var Rubriques = listRubrique.AsQueryable();
List<RubriquepointageVM> lstRubriqueinter = ServiceApplicatif.GetListe();
if (!(listRubrique.Any(r => r.RubriqueId==(vm.RubriqueId)))){
ModelState.AddModelError("RubriqueId", "ajout impossible ");
return Json(ModelState.ToDataSourceResult());
}else {
RubriquepointageVM rub = ServiceApplicatif.Save(vm);
return Json(new[] { vm }.ToDataSourceResult(dsRequest, ModelState));
DataCache dataCache = new DataCache(CurrentSecurityContext.TenantID);
dataCache.DropDataCache<RubriquepointageVM>();
}
}
catch (Exception ex)
{
LoggerRubriquepointage.Error(string.Format("Exception : {0}", ex.Message.ToString()));
throw new Exception("Erreur lors de l'enregistrement.");
}
}
当我提出一个断点时,如果我从列表框中添加了相同的值,那么它只会占用其他值:
else {
RubriquepointageVM rub = ServiceApplicatif.Save(vm);
return Json(new[] { vm }.ToDataSourceResult(dsRequest, ModelState));
DataCache dataCache = new DataCache(CurrentSecurityContext.TenantID);
dataCache.DropDataCache<RubriquepointageVM>();
}