Questions tagged «razor»

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



4
将参数从@ Html.ActionLink MVC 4传递给控制器
在这一行: @Html.ActionLink("Reply", "BlogReplyCommentAdd", "Blog", new { blogPostId = blogPostId, replyblogPostmodel = Model, captchaValid = Model.AddNewComment.DisplayCaptcha }) 我在blogPostId上收到以下运行时错误: 参数字典包含方法'System.Web.Mvc.ActionResult BlogReplyCommentAdd(Int32,Nop.Web.Models.Blogs.BlogPostModel,Boolean)'中非空类型'System.Int32'的参数'blogPostId'的空条目'Nop.Web.Controllers.BlogController'。可选参数必须是引用类型,可为空的类型,或者必须声明为可选参数。参数名称:参数 我已经为此分配了一个值,例如 @{ var blogPostId = Model.Id; } 我的控制器: public ActionResult BlogReplyCommentAdd(int blogPostId, BlogPostModel model, bool captchaValid) {} 难道我做错了什么?请给我一个例子。


8
MVC Razor动态模型,“对象”不包含“ PropertyName”的定义
将MVC 3与Razor视图引擎一起使用。我有这个观点: @model dynamic @{ var products = (List<ListItemBaseModel>)Model.Products; var threshold = (int)(Model.Threshold ?? 1); var id = Guid.NewGuid().ToString(); } 使用以下代码从另一个视图调用它: @Html.Partial("PartialViewName", new { Products = Model, Threshold = 5 }) 在两个视图中,当我调试它们并观察模型时,它似乎包含正确的对象。当我执行代码时,我在“ var products =”行上看到一条错误消息: “对象”不包含“产品”的定义 谁能向我解释为什么我会收到该错误?同样,当我在调试模式下观看Model对象时,它看起来还不错(具有2个属性:Products和Threshold)

6
使用RazorEngine时如何输出原始html(不是来自MVC)
我正在尝试生成包含HTML内容的电子邮件。该内容已经过卫生处理,因此在这方面我并不担心,但是当我致电时: Razor.Parse(template, model); 在以下Razor模板上: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <body> @(new System.Web.HtmlString(Model.EmailContent)) </body> </html> 输出的电子邮件是HTM1编码的,但是我需要对其进行解码。我该怎么做?
105 c#  razor  html-encode 


8
使用编辑器/显示模板中的部分
我想将所有JavaScript代码都放在一个部分中;就body在我的主版式页面上的结束标记之前,只是想知道最好的方法,MVC样式。 例如,如果我创建一个DisplayTemplate\DateTime.cshtml使用jQuery UI的DateTime Picker 的文件,而不是将JavaScript直接嵌入该模板中,那么它将呈现中间页。 在我的普通视图中,我可以先使用@section JavaScript { //js here }然后@RenderSection("JavaScript", false)在主布局中使用,但这在显示/编辑器模板中似乎不起作用-有什么想法吗?

9
使用Razor / MVC3将AssemblyVersion放入网页时出现问题
我在_Layout.cshtml文件的页脚中使用以下代码,将AssemblyInfo版本数据放入MVC3站点中每个页面的页脚中。然而: @System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString() 只需在页脚中打印: Revision 0.0.0.0 当我修改视图以使用以下命令显示“执行装配”的所有装配信息时 @System.Reflection.Assembly.GetExecutingAssembly().GetName().ToString() 打印以下内容: Revision App_Web__layout.cshtml.639c3968.hlogy75x, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null 这表明“执行程序集”不是我的主要应用程序,而是视图本身。 如何获得ACTUAL应用程序的装配信息,而不仅仅是单个视图?

1
Html.RenderPartial给我奇怪的重载错误?
我制作了一个名为_Test.cshtml的测试部分页面,并将其放置在与要调用它的视图相同的目录中,这里是: <div>hi</div> 在调用cshtml视图中,我只需输入: @Html.RenderPartial("_Test") 这给了我错误: CS1502:“ System.Web.WebPages.WebPageExecutingBase.Write(System.Web.WebPages.HelperResult)”的最佳重载方法匹配具有一些无效的参数 我也尝试了相同结果的完整路径。 我很困惑为什么这样做,我想我缺少一些简单的东西?


12
从局部填充剃刀区
我尝试执行此操作的主要动机是,仅在页面底部将部分代码与其余Javascript一起使用,而不是在呈现部分代码的页面中间,获取Javascript。 这是我要执行的操作的简化示例: 这是在正文之前的“脚本”部分的布局。 <!DOCTYPE html> <html> <head> <title>@ViewBag.Title</title> <link href="@Url.Content("~/Content/Site.css")" rel="stylesheet" type="text/css" /> </head> <body> @RenderBody() <script src="@Url.Content("~/Scripts/jquery-1.4.4.min.js")" type="text/javascript"></script> @RenderSection("Scripts", false) </body> </html> 这是使用此布局的示例视图。 <h2>This is the view</h2> @{Html.RenderPartial("_Partial");} @section Scripts { <script type="text/javascript"> alert("I'm a view."); </script> } 这是从视图渲染的部分图像。 <p>This is the partial.</p> @* this never makes it into …

19
基于剃刀的视图看不到引用的程序集
我试图基于另一个程序集中的类创建一个强类型视图。但是,无论出于何种原因,我的Razor视图似乎都看不到项目中引用的其他程序集。例如 @model MyClasses.MyModel 在Visual Studio 2010中导致错误,“ MyClasses找不到类型或名称空间名称(您是否缺少using指令或程序集引用?)。” 标准视图引擎中引用的同一类可以正常工作。尝试在我的视图主体中引用该类也遇到了同样的麻烦。 我是否缺少有关Razor的信息,还是需要以其他方式引用程序集?


3
ASP.NET Core 2.0 Razor与Angular / React / etc等
我和我的团队已经获得了用于开发企业级Web应用程序的资金(不会详细介绍其功能)。该应用程序将具有许多单独的网页,但是其中两个页面更加集中且非常繁琐-就像许多用户交互,显示大量数据的模式,Websocket连接,聊天等一样繁重。 我已被任命为该项目的首席架构师,所以我正在对最新的Web框架进行一些研究。对于后端,我们已经进行了一些测试,并决定使用Azure SQL平台。到目前为止,我喜欢ASP.NET Core 2.0所做的改进。特别是Razor引擎,它是ASP.NET MVC早期版本的基础。 我想就“新” Razor vs. Angular / React之类获得一些专家意见。我特别关注性能。Core 2.0 Razor如何支持客户端渲染框架?差异可以忽略不计吗?我们的应用程序定位到潜在的1,000,000用户(大约100,000个并发用户)。 提前致谢!

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.