Questions tagged «razor»

Razor是ASP.NET网页和ASP.NET MVC(从版本3开始)使用的模板语言。它在HTML生成之上增加了一层抽象。它支持HTML标记与C#或VB代码之间的无缝过渡。标记和代码之间的转换由“ @”符号指示。

7
ASP.NET MVC剃刀:HTML中的条件属性
下面的代码似乎并不干净。有任何改进代码的建议吗? <li @if(ViewData["pagename"].ToString()=="Business details"){ <text>class="active" </text> } > <a @if(ViewData["pagename"].ToString()=="Business details"){ <text>style="color: white; background-color: #08C; border: 1px solid #08C;" </text> } href="@Url.Action("BusinessDetails", "Business")">Business Details</a> </li> <li @if (ViewData["pagename"].ToString() == "Booking policies"){ <text>class="active"</text> }> <a @if (ViewData["pagename"].ToString() == "Booking policies") { <text>style="color: white; background-color: #08C; border: 1px solid #08C;" </text> } …

7
Html.LabelFor指定的文字
任何人都对使用时如何指定文本有任何想法Html.LabelFor(c=>c.MyField)。它MyField可能不是在屏幕上显示的适当名称,您可能想要“ The Super Fantastic Field”,但似乎没有任何重载。 有任何想法吗?
83 c#  asp.net-mvc  razor 


5
MVC剃刀@foreach
我听说在视图中使用@foreach是不行的。意思是,视图中不应包含任何逻辑。关于@foreach的逻辑应该放在哪里的最佳实践是什么? @foreach..

9
安装ASP.NET MVC 4 Beta后引发InvalidCastException
在装有ASP.NET MVC 3的计算机上安装ASP.NET MVC 4 Beta后,出现以下异常。 用户代码Message = [A] System.Web.WebPages.Razor.Configuration.HostSection无法处理System.InvalidCastException,无法将其强制转换为[B] System.Web.WebPages.Razor.Configuration.HostSection。类型A源自'System.Web.WebPages.Razor,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'在上下文'Default'中的位置'C:\ Windows \ Microsoft.Net \ assembly \ GAC_MSIL \ System .Web.WebPages.Razor \ v4.0_1.0.0.0__31bf3856ad364e35 \ System.Web.WebPages.Razor.dll'。类型B源自位置'C:\ Windows \ Microsoft.Net \ assembly \ GAC_MSIL \ System的上下文'Default'中的'System.Web.WebPages.Razor,Version = 2.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35' .Web.WebPages.Razor \ v4.0_2.0.0。0__31bf3856ad364e35 \ …

5
在Razor视图中发出未编码的字符串
正如ScottGu在他的博客文章中所说,“默认情况下,使用@块发出的内容将自动进行HTML编码,以更好地防御XSS攻击情况”。我的问题是:如何输出非HTML编码的字符串? 为了简单起见,请坚持使用以下简单案例: @{ var html = "<a href='#'>Click me</a>" // I want to emit the previous string as pure HTML code... }

5
在Razor中串联字符串
如何使用Razor语法连接两个字符串? 如果我有:@Model.address并且@Model.city我希望投入产出,address city我该怎么办?像做一样简单@Model.address + " " + @Model.city吗?



9
如何使用Razor引擎在MVC 5项目上添加Date Picker Bootstrap 3?
我需要一些有关如何使用Razor引擎在MVC 5项目上安装Date Picker Bootstrap 3的准则。我在这里找到了此链接,但是无法在VS2013中使用。 从上面后面的链接中的示例复制过来,我已经完成了以下工作: bundles.Add(new ScriptBundle("~/bundles/bootstrap").Include( "~/Scripts/bootstrap.js", "~/Scripts/bootstrap-datepicker.js", // ** NEW for Bootstrap Datepicker "~/Scripts/respond.js")); bundles.Add(new StyleBundle("~/Content/css").Include( "~/Content/bootstrap.css", "~/Content/bootstrap-datepicker.css", // ** NEW for Bootstrap Datepicker "~/Content/site.css")); 然后我将脚本添加到索引视图,如下所示 @section Scripts { @Scripts.Render("~/bundles/jqueryval") <script type="text/javascript"> $('.datepicker').datepicker(); //Initialise any date pickers </script> } 现在,如何在这里调用日期选择器? <div class="form-group input-group-sm"> @Html.LabelFor(model => model.DropOffDate) @Html.TextBoxFor(model …

10
无布局的剃刀视图
Layout = null;在我看来,它怎么仍会保留默认布局呢? 有什么技巧可以阻止它这样做吗? 这是我没有布局的看法: @{ Layout = ""; } <!DOCTYPE html> <html> <head> <title>Index</title> @{Html.RenderAction("Head", "Header");} </head> <body> <div> Home </div> </body> </html> 这是渲染的输出!! <!DOCTYPE html> <html> <head> <title>Index</title> <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> <link href="/Content/Site.css" rel="stylesheet" type="text/css" /> <script src="/Scripts/jquery-1.5.1.min.js" type="text/javascript"></script> <script src="/Scripts/modernizr-1.7.min.js" type="text/javascript"></script> </head> …

12
根据Html.TextBoxFor的条件设置禁用属性
我想基于asp.net MVC中的Html.TextBoxFor的条件设置禁用属性,如下所示 @Html.TextBoxFor(model => model.ExpireDate, new { style = "width: 70px;", maxlength = "10", id = "expire-date" disabled = (Model.ExpireDate == null ? "disable" : "") }) 该帮助器有两个输出disable =“ disabled”或disabled =“”。这两个主题都使文本框禁用。 如果Model.ExpireDate == null,我想禁用文本框,否则我想启用它

4
带级联截面的Razor嵌套布局
我有一个使用Razor作为其视图引擎的MVC3网站。我希望我的网站可以换肤。大多数可能的外观非常相似,以至于它们可以从共享的主版面派生。 因此,我正在考虑以下设计: 但是,我希望能够RenderSection在最底层调用_Common.cshtml,并使其呈现在最顶层定义的部分Detail.cshtml。这是行不通的:RenderSection显然只渲染下一层定义的部分。 当然,我可以定义每个皮肤中的每个部分。例如,如果_Common需要调用RenderSection("hd")中定义的部分Detail,我只需将其放在每个部分中即可使用_Skin: @section hd { @RenderSection("hd") } 这会导致代码重复(因为每个皮肤现在必须具有相同的部分),并且通常感到混乱。我还是Razor的新手,似乎我可能缺少明显的东西。 调试时,我可以在WebViewPage.SectionWritersStack中看到已定义部分的完整列表。如果我可以告诉RenderSection在放弃之前浏览整个列表,它将找到我需要的部分。Section,SectionWritersStack是非公开的。 另外,如果我可以访问布局页面的层次结构并尝试在每个不同的上下文中执行RenderSection,则可以找到所需的部分。我可能缺少了一些东西,但是我看不到任何办法。 除了我已经概述的方法之外,还有其他方法可以实现此目标吗?

6
无法对空引用执行运行时绑定,但不是空引用
使用:MVC 4,ASP.NET Razor 我收到一个错误,看起来像不可能。它告诉我,我使用的是空引用,即States,但显然它已被设置。 控制器: public ActionResult Index() { Dictionary<int, string> states = new Dictionary<int, string>() { { -1, "a"}, { 0, "b"}, { 1, "c"}, { 2, "d"}, }; //assigning states ViewBag.States = states; foreach (KeyValuePair<int, string> de in ViewBag.States) { Debug.WriteLine(de.Key); } return View(); } 风景: <div class="search-input"> …

6
用剃刀显示编码的HTML
我将编码的HTML存储在数据库中。 我可以正确显示它的唯一方法是: <div class='content'> @MvcHtmlString.Create(HttpUtility.HtmlDecode(Model.Content)); </div> 它很丑。有什么更好的方法吗?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.