如何在C#中使用struct创建字典属性?
我有一个字典,其中包含一个结构作为键,我必须为字典创建一个属性如何在C#中使用struct创建字典属性?,c#,properties,dictionary,C#,Properties,Dictionary,我有一个字典,其中包含一个结构作为键,我必须为字典创建一个属性 private Dictionary<string, Data> m_dictParam; struct Data { public string MinValue { get; set; } public string MaxValue { get; set; } } 专用字典m_dictParam; 结构数据 { 公共字符串MinValue{get;set;}
private Dictionary<string, Data> m_dictParam;
struct Data
{
public string MinValue { get; set; }
public string MaxValue { get; set; }
}
专用字典m_dictParam;
结构数据
{
公共字符串MinValue{get;set;}
公共字符串MaxValue{get;set;}
}
我想使用该结构创建字典的属性
当我试着这样做的时候
public Dictionary<string,Data> MinMax
{
get;
set;
}
公共字典最小值
{
得到;
设置
}
发生以下错误:
可访问性属性类型system.Collections.Generic.Dictionary不一致
您需要将结构定义为public。您的属性是公共的,但结构不是,因此任何只能访问公共内容的组件都无法使用您的属性,因为它无法识别密钥类型
public struct Data
{
public string MinValue { get; set; }
public string MaxValue { get; set; }
}
您的
数据
结构是非公共的
,您正试图公开它。事实上,该结构是内部的,请尝试将其声明为
public struct Data {
// etc
}