c# - 带有字典的默认值属性
问题描述
我正在尝试使用 defaultvalue 属性 Default Value Documentation
所以我知道如何用字符串做一个默认属性
[DefaultValue("This is the message")]
但是如何为字典设置默认值?
我试过这个
[DefaultValue(new Dictionary<string, string>() { { "Test", "test" } })]
但我得到这个错误
错误 CS0182 属性参数必须是属性参数类型的常量表达式、typeof 表达式或数组创建表达式
解决方案
您不能在任何属性中使用 Dictionary,但您可以尝试使用键 + 值添加自己的属性。
我不知道您想如何使用它,但我建议您尝试以下方法:
public class DictionaryDefaultAttribute : DefaultValueAttribute
{
public DictionaryDefaultAttribute(string key, string value)
: base(new Dictionary<string, string>() {{key, value}})
{
}
}
推荐阅读
- html - 具有最大宽度的内联 CSS 响应式嵌入式视频
- php - 使用第一个元素作为键将索引多维数组转换为关联数组
- woocommerce - Woocommerce - 在类别页面顶部显示特色产品
- python-3.x - 计算列表中列表中的值
- java - 将 System.out 重定向到多线程 Java 程序中的不同目标,同时保留控制台输出
- linux - EPOLLET 行为不正确?
- python - 获取文件夹中文件的百分比
- c# - 无法使用 Visual Studio 2017 加载文件或程序集“Microsoft.CodeAnalysis.LiveUnitTesting.Runtime,版本 = 1.7.0.0”
- node.js - 在nodejs中创建窗口并监听本机消息
- sql - PostgreSQL:如何包含 0 的计数