MVC5 VB.Net将Dictionary(Of String,String)转换为SelectList类型

时间:2019-05-31 21:11:12

标签: .net vb.net asp.net-mvc-5.2

我有一个简单的VB词典:

Dim list As SelectList = New SelectList(MyOptions, "Key", "Value", "one") ' errors on this line
html.DropDownList("SomeList", list, "Simple List")

我正在尝试将其转换为SelectList类型,以便在Html.DropDownList帮助器中使用,该帮助器为选择列表生成HTML。

我已经尝试过:

Dim list As SelectList = New SelectList(MyOptions.[Select](Function(x) New With {Key .Value = x.Key, Key .Text = x.Value}), "Value", "Text") ' errors on this line
html.DropDownList("SomeList", list, "Simple List")

导致此错误的原因:

  

DataBinding:“ System.String”不包含名称为“   “键”。

我已经尝试过:

#include <stdio.h>
#include <string.h>

int main()
{
        float celsius, fahrenheit;
        char tempConvering[10];

        printf("Enter what to convert to what (F to C; C to F): ");
        scanf(" %s", &tempConvering[10]);

        if(strcmp(tempConvering, "F to C") == 0)
        {
            printf("\nEnter temperature in Fahrenheit: ");
            scanf(" %f", &fahrenheit);
            celsius = fahrenheit * 1.8 + 32;
            printf("%.2f Fahrenheits = %.2f Celsius\n", fahrenheit, celsius);
        }
        else if(strcmp(tempConvering, "C to F") == 0)
        {
            printf("\nEnter temperature in Celsius: ");
            scanf(" %f", &celsius);
            celsius = (fahrenheit - 32) / 1.8;
            printf("%.2f Celsius = %.2f Fahrenheits\n", celsius, fahrenheit);
        }
        else
        {
            puts("\nError!");
        }
}

导致此错误的原因:

  

找不到类型为'String'的公共成员'Key'。

1 个答案:

答案 0 :(得分:1)

DOH!这是语法错误

我正在尝试使用Filter.Values来访问“值”键,而我应该一直在使用Filter(“ Values”)。