c# - 如何初始化 private static readonly HashSet<char>?

标签 c# asp.net asp.net-mvc

我想要一个私有(private)的常量成员

private static readonly HashSet<char> _nameChars

在我的 Controller 中,包含字符 ' '、'a'、'A'、...、'z'、'Z'。目的是用于表单的服务器端验证。但是如何初始化 HashSet

private static readonly HashSet<char> _nameChars = ?????

有什么好的方法吗?我知道 C++ 对 std::set 进行了括号初始化。

最佳答案

C# 也有集合初始化器:

 private static readonly HashSet<char> _nameChars = new HashSet<char> { 'a', 'b', ...};

你也可以使用一个接受 IEnumerable<T> 的构造函数参数:

private static readonly HashSet<char> _nameChars = new HashSet<char>("abcde...");

我发现第二种方法更具可读性。

关于c# - 如何初始化 private static readonly HashSet<char>?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33547420/

相关文章:

c# - 输出窗口中消息的 Visual Studio 源

asp.net - 超链接的字体大小问题

c# - 进行服务调用时 Request.InputStream 为空

c# - 带模型的 mvc 上传文件 - 第二个参数发布的文件为空

asp.net-mvc - Azure 应用服务授权/简易身份验证与 ASP.NET 表单例份验证冲突

c# - 使用 OAuth 2 的 Google 阅读器 API 错误 401

c# - 来自 2 ComboBox 的类别影响带有 SQL 的 datagridview 的第三个 Combobox

c# - 了解外部变量何时更改的有效方法是什么?

c# - 没有注册 IUserTokenProvider

asp.net-mvc - AccessToken 不能超过 4K