0

我在理解 asp.net mvc 如何处理 Null 值时遇到了一些问题。在第一种情况下,我有以下操作方法:-

[HttpPost]
        public ActionResult Delete(int labtestid, int visitid)
        {
try
            {
                var vlr = repository.GetVisitLabResult(labtestid,visitid);
                string desc = vlr.LabTest.Description; 
                repository.DeleteVisitLabResult(vlr);
                repository.Save();
                return Json(new { IsSuccess = "True", id = labtestid, description =    desc }, JsonRequestBehavior.AllowGet);
            }

如果存储库方法var vlr = repository.GetVisitLabResult(labtestid,visitid);不返回任何结果 ( var vlr is null),则将在string desc = vlr.LabTest.Description;上引发以下异常 用户代码未处理 NullReferenceException。那么为什么框架会引发异常而不是仅仅为字符串 desc 分配一个空值!!!BR

4

1 回答 1

3

看起来实际对象本身为空。您有一个 null 对象,并且您正在尝试访问它的属性,因此运行时将抛出一个NullReferenceException. 你最好先检查对象是否为空,然后再尝试访问它的成员:)

于 2012-04-30T16:55:20.503 回答