c# - 存储可以循环编辑的列表?

标签 c# asp.net-mvc for-loop enums

我想将字符串放入我拥有的列表中,并将它们转换为适当的枚举。使用 enum.parse 的代码可以做到这一点。我的代码的问题是它在离开循环后不存储 dispoFilters。解决这个问题的好方法是什么?

// Get Disposition enum
if (model.FilterSet.Dispositions != null)
{
    List<int> dispoFilters = new List<int>();
    for (int i = 0; i < model.FilterSet.Dispositions.Count; i++)
    {
        dispoFilters.Add((int)((RespondentStatus)Enum.Parse(typeof(RespondentStatus), model.FilterSet.Dispositions[i].ToString())));
    }
}

最佳答案

您的代码在离开 IF 语句后不会存储 dispoFilters。

将您的声明上移一点。

List<int> dispoFilters = new List<int>();
if (model.FilterSet.Dispositions != null)
{
    for (int i = 0; i < model.FilterSet.Dispositions.Count; i++)
    {
        dispoFilters.Add((int)((RespondentStatus)Enum.Parse(typeof(RespondentStatus), model.FilterSet.Dispositions[i].ToString())));
    }
}

Scope是用于定义变量可用多长时间以及对代码的哪些部分可用的术语。通过在 if 语句中声明变量,您在退出 if 时失去了作用域。

关于c# - 存储可以循环编辑的列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20552333/

相关文章:

c# - 如何在统一 4.6 中停止 OnBeginDrag() 中的拖动事件

c# - 通过 POST httprequest 传输文件到 hololens(错误 429)

c# - Lookupedit 按值选择,devexpress

jquery - 如果模型对话框已打开,则无法下载文件

bash:带有无符号整数的for循环

c - 计算三个嵌套 for 循环的总体进度 (%)

c# - 如何检测文本文件的字符编码?

c# - 无法添加 Controller

asp.net - 如何在asp.net mvc中使用请求体

c++ - 在 C++ 中,在 For 循环中使用非递增变量是否可以接受?