在LIST中的C#中,我无法分配值

时间:2019-01-03 01:26:44

标签: c#

这里的请求是具有“ sortcolumns”属性的LIST,所以最初它的“ sortcolumns”为null,所以我以编程方式尝试分配作为排序列一部分的两个值

request.SortColumns.Add( new SortColumn() { Name = "PolicyName", Direction = DirectionType.Descending });

我总是遇到此错误,请告诉我原因-对象引用未设置为对象的实例。

此处

public class SortColumn
{
    public string Name { get; set; }
    public DirectionType Direction { get; set; }
}

2 个答案:

答案 0 :(得分:2)

您似乎需要初始化列表,然后才能开始添加列表(一次)

request.SortColumns = new List<SortColumn>();

这可能在请求的构造函数中,可能在您Add代码之前,甚至可能使其成为类本身的初始化属性

属性初始化的示例

public class SomeRequest
{

   public List<SortColumn> SortColumns {get;set;} = new List<SortColumn>();

   ...

构造函数初始化器的示例

public class SomeRequest
{

   public SomeRequest()
   {

       SortColumns = new List<SortColumn>();
       ...

答案 1 :(得分:0)

在使用该属性之前,您需要对其进行初始化,请尝试以下操作:

request.SortColumns = new List<SortColumn>();
request.SortColumns.Add( new SortColumn() { Name = "PolicyName", Direction = DirectionType.Descending });