使用Vb.Net的Razor代码中的语法问题

时间:2012-02-09 16:34:35

标签: asp.net-mvc vb.net asp.net-mvc-3 razor

我正在使用我的第一个MVC3,vb.net项目,并且遇到以下代码的问题

@code
' builds standard list of attributes
   Dim s1 = SharedAttributeBuilder.BuildAttributes(Me) 
End Code
@Html.TextAreaFor(Model >= Model, 2, 30, @s1)

我的问题在于最后一行的@ s1。当我构建时,我得到一个“表达预期”错误消息。我有点困惑,因为这个最后一行在其他c#项目中运行良好。 我试过@(s1)并且不起作用。

有人能指出我正确的方向。


编辑我的一位同事为我解决了这个问题。我必须为lamdas使用vb语法。对我而言。工作线看起来像

@Html.TextAreaFor(Function(Model) Model, 2, 30, s1)

1 个答案:

答案 0 :(得分:0)

汤姆,

@Html.TextAreaFor(model => model.someproperty, 2, 30, s1)

工作(即用普通的@s1替换s1)??

当然在c#中,这可以按预期工作(请注意小写model加上相关属性,加上=>而不是>=。)