4

我是 Asp.Net 和 MVC 的新手。让我感到困惑的一件事是,我们有时会在视图中使用@Using 和@Model,我需要更清楚何时以及为什么需要什么。

4

2 回答 2

6

@using与普通 C# 代码中的 using 指令相同:它允许访问命名空间的类型,而无需显式声明。

@model为视图(或部分视图)定义模型的类型,允许对它及其成员进行类型化访问。

@Model在当前调用中访问与此视图链接的模型,就像在实际数据中一样。

于 2013-09-17T12:23:13.277 回答
3

@using用于指定具有实现接口的对象的代码块,IDisposable但它也可以与 ASP.NET MVC 中的 HTML 助手一起使用,如下所示:

@using (Html.BeginForm()) {
    // Do stuff in the form here
}

这相当于:

@{ Html.BeginForm(); }
    // Do stuff in the form here
@{ Html.EndForm(); }

因此,在这种情况下,@using将为您呈现表单的结束标记。

@model注意小写m)用于声明模型用于视图的强类型,如下所示:

@model YourNamespace.YourTypeName

然后在您的实际标记中,使用Model关键字(注意大写的“M”)引用模型,如下所示:

@Model.SomePropertyInYourModel
于 2013-09-17T12:31:19.887 回答