在Asp.net中,有一个用户控件,这是一个 ascx 页面,我们可以有隐藏的字段:
public partial class classA:System.Web.Mvc.ViewUserControl<Models.classB>
{
//hidden field
public string url
{
get{ ...... }
}
}
但现在我在asp.net mvc3中使用 razor ,这是 cshtml 文件。我们有相应的东西吗?我现在如何使用隐藏字段?
答案 0 :(得分:1)
MVC视图没有字段,就像Web窗体用户控件一样。
MVC视图(部分视图)也通过将 Viewmodel 类的实例传递给它们来获取数据。您可以使用@model
指令(通常是视图中的第一行)指示viewmodel类的类型:
@model MyViewmodelClass
<span>@Model.MyClassProperty</span>
viewmodel类本身可以包含任何类的私有字段。
如果你需要在视图中使用变量,你可以简单地在剃刀代码块中声明它们并在视图中使用它们:
@{
var privatevar = "value";
}
<span>@privatevar</span>
但是,作为最佳实践,ASP.NET MVC中视图的职责应限于显示数据,因此不包含与此无关的代码。
答案 1 :(得分:0)
在使用剃须刀时,必须拥有基本的HTML知识,因为您需要编写一些html,并且没有和Drag and Drop在页面上添加控件。
MVC引入了部分视图,可以说是用户控件的替代/替代。
您可以通过选择“视图创建”对话框中的“创建局部视图”复选框来创建PartialView。其次在MVC中,创建局部视图手册并不困难。
当您使用Razor时,只需在视图顶部设置Layout = null;
,它就会被视为部分视图。其次,您可以使用Style属性下的display
属性轻松地将任何字段隐藏。
快乐编码:)