如何使用Razor视图
在视图中读取非静态值// MODEL
public int Number1 { get; set; }
public int Number2 { get; set; }
// VIEW
@using BasicCalculator.Events.Models;
@{
Layout = "~/Views/Shared/_Layout.cshtml";
}
@Html.TextBox("Number1",?????
我必须在视图中读取属性(Number1和Number2)...
答案 0 :(得分:1)
您希望在传入表达式时使用绑定到模型的TextBoxFor
:
@Html.TextBoxFor(m => m.Number1)
但要执行此操作,您需要将using
声明更改为model
:
@model BasicCalculator.Events.Models.YourModelName
答案 1 :(得分:1)
将您的@using
更改为@model
:
@model BasicCalculator.Events.Models.YourModel
@Html.TextBoxFor(m => m.Number1)
答案 2 :(得分:0)
正如您在@CodeCaster的回答评论中所说,您的视图找不到@HTML的命名空间,当您导入System.Web.Mvc命名空间时,他无法识别.TextBox。
我建议你在View文件夹中找到你的Web.config文件。 在里面搜索标签。 确保视图中所需的所有命名空间都在那里。
你应该像以下一样思考:
<namespaces>
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Optimization"/>
<add namespace="System.Web.Routing" />
</namespaces>
希望这可能有所帮助。