删除(Action)方法时出现System.ArgumentNullException

时间:2014-04-19 22:20:50

标签: c# asp.net-mvc-3

如果中包含表常量中的 NAME 字段,我为表 Constante 创建了一个删除方法。表格中的Formule 字段 Rubrique 此名称无法删除:我有一个System.ArgumentNullException:值不能为null异常:源错误:

 Line 85:             {
 Line 86:                 IEnumerable lstRefData = GetListFromDatabase<VM>(dataType);
 Line 87:                 HttpContext.Current.Cache[cacheKey] = lstRefData;
 Line 88:             }
 Line 89: 

这是我的控制器方法:

public JsonResult Delete([DataSourceRequest] DataSourceRequest dsRequest, ConstanteVM vm)
        {
            try
            {   
                List<RubriqueVM> lstRubrique = RefDataManager.GetRefData<RubriqueVM>();
                if ((lstRubrique.Any(r => r.FORMULE.Contains(vm.NOM))))
                {
                    ConstanteVM assur = ServiceApplicatif.Delete(vm.ConstanteId);

                    ViewData["ConstanteType"] = new SelectList(RefDataManager.GetRefData<ConstanteTypeVM>(), "ConstanteTypeCode", "ConstanteTypeLibelle");

                    DataCache dataCache = new DataCache(CurrentSecurityContext.TenantID);
                    dataCache.DropDataCache<ConstanteVM>();

                }

                return Json(new[] { vm }.ToDataSourceResult(dsRequest, ModelState));
            }

            catch
            {
                ModelState.AddModelError("NOM", "Suppression impossible ");
                return Json(ModelState.ToDataSourceResult());
            }
        }

1 个答案:

答案 0 :(得分:0)

如果您不知道哪个对象是null,只需在控制器的开头放置一个断点即可。并跟踪直到找到可为空的对象或错误引发。没有它,很难说什么。