在razor中输入name属性



我正在尝试将MVC2中的以下输入名称属性转换为razor中的等效属性。

name="<%=ViewData.TemplateInfo.GetFullHtmlFieldName(String.Empty)%>.Day"

在razor中我使用

name="@ViewData.TemplateInfo.GetFullHtmlFieldName(String.Empty).Day"

但是它在抱怨,因为它说"string'不包含'Day'的定义,并且没有扩展方法'Day'接受'string'类型的第一个参数"。该属性是一个日期时间属性,以上在MVC2中工作。

@(ViewData.TemplateInfo.GetFullHtmlFieldName(String.Empty)).Day

注意在方法调用的主要部分周围的()。这告诉解析器只包含要编译的()中的元素。其他的都被忽略了。这是必要的,因为代码片段的.Day部分看起来像对编译器的属性调用,并被视为这样。

查看是否有效:@ViewData.TemplateInfo.GetFullHtmlFieldName("Day")

换句话说,你想干什么?

使用如下:

name="@(ViewData.TemplateInfo.GetFullHtmlFieldName(String.Empty) + ".Day")"

最新更新