在Linq中默认列表为Null

时间:2019-04-12 00:05:28

标签: c# list linq

首先,如果我对术语的理解不正确,请原谅我。我有一个称为A的类,它包含获取和返回不同值的方法。其中一种方法称为B,它获取并返回ClassB的列表,该列表的值可以为null。因此,我正在将ClassB初始化为如下所示的空白列表:

public class A
{
    public int X { get; set; }
    public int Y { get; set; }
    public List<ClassB> B { get; set; } = new List<ClassB>();

}

public class B
{
    public int BTypeId { get; set; }      
}

然后我在类A和B之外有一个方法C,它像下面这样调用类A。

public void create (A a)
{
var request 1 = B.getSomething();
var request2 = a.request1.Select(s => s.BTypeId);
}

但是尝试为request2赋值时出现错误:

Exception thrown: 'System.ArgumentNullException' in System.Core.dll
Exception thrown: 'System.ArgumentNullException' in mscorlib.dll

当我扔空列表时,我认为它不喜欢它。如果B列表不为空,则该代码将正常工作。 我的问题是如何为request2赋值,以便它可以接受一个空列表?

0 个答案:

没有答案