输入提供给.NET泛型构造函数的参数,但仍然会导致错误,如果没有

Iuc*_*unu 3 c# asp.net-mvc razor

我的ASP.NET MVC 4 Razor应用程序中有一些看似无问题的代码片段:

@{
    IDictionary htmlAttributes = new Dictionary<string, string>();
}
Run Code Online (Sandbox Code Playgroud)

这是产生错误,

"使用泛型类型'System.Collections.Generic.IDictionary'需要2个类型参数".

任何人都知道发生了什么事吗?

Dam*_*ver 12

你还需要在左侧给它:

IDictionary<string, string> htmlAttributes = new Dictionary<string, string>();
Run Code Online (Sandbox Code Playgroud)

请注意,错误消息是在讨论IDictionary,而不是Dictionary.

或者,如果您确实需要非泛型IDictionary接口,请确保其namespace(System.Collections)在范围内.