对于强类型,将var值初始化为null

时间:2014-07-09 21:19:37

标签: c#

我正在尝试执行以下操作:

我不知道如何初始化teh restultCLList,因为我无法将其设置为null。

    var resultCLlist = null;

    if (RdoStatus.SelectedValue == "Incomplete")
    {
         resultCLList = (from ms in db.ver_ServiceReport
                            join gc in db.map_Sit 
                            on ms.SiteId equals gc.SiteID
                            where gc.CompanyId == companyId
                            select new ServiceReport
                            {
                                VerificationId = ms.VerificationId,
                                SiteId = ms.SiteId,

                            }
                         ).ToList();
    }
    else
    {
         resultCLList = (from ms in db.ver_ServiceReport
                            join gc in db.map_Sites
                            on ms.SiteId equals gc.SiteID
                            where gc.CompanyId == companyId
                            select new ServiceReport
                            {
                                VerificationId = ms.VerificationId,
                                SiteId = ms.SiteId,
                                SiteName = gc.SiteName,
                                TimeStamp = ms.TimeStamp,
                                EntryDate = ms.EntryDate,
                                Supplier = ms.Supplier
                            }
                        ).ToList();

    }

1 个答案:

答案 0 :(得分:8)

为什么不使用List<ServiceReport>代替var

您无法将var初始化为null值,因为 null 本身不是一种类型。您可以将其转换为object,但它赢了不安全。var如果您不知道右侧表达式的返回类型,或者类型名称太长,则非常有用。在这种情况下,您知道类型,所以只需要''使用var