如何在类构造函数内初始化字典

本文关键字:初始化 字典 构造函数 | 更新日期: 2023-09-27 18:00:11

我有一个属性类型为Dictionary<>的类。我正在尝试使用以下代码初始化构造函数中的属性。它给出了错误。为什么?

错误1

"权限"是一个"属性",但使用起来像一个"类型"

代码:

public class UserModel
{
    public UserModel()   // constructor
    {
        Permissions = new Permissions<Guid, List<Guid>();
    }
    public Dictionary<Guid, List<Guid>> Permissions { get; set; }
}

如何在类构造函数内初始化字典

您不能创建属性的实例。相反,您需要创建一个类型的实例并将其分配给属性。

public class UserModel
 {
    public UserModel()   // constructor
    {
        Permissions = new Dictionary<Guid, List<Guid>>();
    }
    public Dictionary<Guid, List<Guid>> Permissions { get; set; }
  }

试试这个

    public class UserModel
    {
       public Dictionary<Guid, List<Guid>> Permissions { get; set; }
       public UserModel()   // constructor
       {
           Permissions = new Dictionary<Guid,List<Guid>>();
       }
    }​