Tag: razor

asp.net mvc 3 handleerror全局filter始终显示IIS状态500页面

我已经尝试了一切,甚至卸载了asp.net mvc3,我无法让HandleError全局filter工作。 我在Global.asax中设置了HandleErrorfilter: public static void RegisterGlobalFilters(GlobalFilterCollection filters) { filters.Add(new HandleErrorAttribute()); } 我也启用了CustomErrors(如果我设置defaultRedirect =“Error”并不重要,我认为这是在文档中,因为旧版本的mvc需要): 尝试浏览页面直到出现错误,您从localhost或使用主机名,在开发服务器或IIS 7.5中,它总是重定向到标准状态500页,而不是我自定义的Error.cshtml视图,我已在共享中创建。 这是错误视图代码: @model System.Web.Mvc.HandleErrorInfo @{ ViewBag.Title = “Oooops”; } Ooops Something really bad happened! 另外我已经注意到,如果我创建一个新的ASP.NET MVC3项目,然后选择“Internet Application”模板,并且只是在该项目中启用customErrors,那么HandleErrorfilter开始正常工作,但是使用空的MVC3模板却没有。 我想澄清一下,确实我可以在调试时看到正在处理的错误视图,但浏览器始终显示错误500页面。

绑定WebGrid表单AJAX

我是MVC3和Razor的新手,一旦从AJAXpost返回数据,我需要帮助绑定/加载WebGrid。 真的很感激任何帮助(项目到期日快速接近);) 我的情况是这样的:我有两个级联下拉列表。 第一个列表包含数据库中的区域。 选择一个区域后,它会使用一系列设施填充第二个下拉列表。 选择设施后,我需要使用建筑物列表填充WebGrid。 我有级联下拉正常工作 Index.cshtml: @using ThisController = MyProject.Controllers.BuildingModelsController @model IEnumerable @{ if (Model != null && Model.Count() > 0) { var grid = new WebGrid(source: Model, rowsPerPage: ThisController.PageSize, ajaxUpdateContainerId: “tabs-2”, defaultSort: “BuildingNumber”); grid.Bind(Model, rowCount: Model.Count(), autoSortAndPage: false); grid.Pager(WebGridPagerModes.All); grid.GetHtml( tableStyle: “display”, alternatingRowStyle: “alt”, columns: grid.Columns( //grid.Column(format: (item) => Html.ActionLink(“Edit”, “Edit”, new […]

如何在.js文件中嵌入Razor C#代码?

必须嵌入javascript代码块 … 但是Razor代码不会在.js文件中包含的.js文件中编译。 如何使这项工作? 或者还有其他优雅的方式来产生类似的效果吗? 谢谢。

从MVC 5.1 EnumDropDownListFor中排除/删除值

我有一个用于用户管理页面的枚举列表。 我正在使用MVC 5.1中的新HtmlHelper,它允许我为Enum值创建一个下拉列表。 我现在需要从列表中删除Pending值,此值只能以编程方式设置,并且永远不应由用户设置。 枚举: public enum UserStatus { Pending = 0, Limited = 1, Active = 2 } 视图: @Html.EnumDropDownListFor(model => model.Status) 无论如何,要么覆盖当前控件,要么编写一个允许我指定枚举的自定义HtmlHelper,或者从结果列表中排除枚举? 或者你会建议我用jQuery做客户端的东西,一旦生成后从下拉列表中删除值? 谢谢!

第一个html助手生成客户端validation属性,而第二个没有

假设我有这个模型: public class Person { public bool IsApproved { get; set; } } 并且这个代码,我试图用check类型呈现input : @Html.CheckBoxFor(x => x.IsApproved) @Html.CheckBox(“IsApproved”) 但是,结果是不同的: // CheckBoxFor result // CheckBox result 如何以及为什么 ,第一个生成客户端validation的属性,而另一个没有? 更新: 交换@Html.CheckBoxFor和@Html.CheckBox的顺序后,标记元素的顺序没有改变。

在.NET Core中将视图返回为字符串

我发现了一些文章如何在ASP.NET中将视图返回到字符串,但无法转换为能够使用.NET Core运行它 public static string RenderViewToString(this Controller controller, string viewName, object model) { var context = controller.ControllerContext; if (string.IsNullOrEmpty(viewName)) viewName = context.RouteData.GetRequiredString(“action”); var viewData = new ViewDataDictionary(model); using (var sw = new StringWriter()) { var viewResult = ViewEngines.Engines.FindPartialView(context, viewName); var viewContext = new ViewContext(context, viewResult.View, viewData, new TempDataDictionary(), sw); viewResult.View.Render(viewContext, sw); return sw.GetStringBuilder().ToString(); } } […]

剃刀中的多个复选框(使用foreach)

我有一个问题,我找不到解决方案。 我正在使用Razor,它是我的VieModel类。 public class GroupToExport { public GroupToExport() { ToExport = false; } [DisplayName(“Export”)] public bool ToExport { get; set; } public Group Group { get; set; } } public class GroupsToExport { public GroupsToExport() { //refill list } public List ExportingGroups { get; set; } } 视图: @using (Html.BeginForm(“Export”, “ElmahGroup”, FormMethod.Post, new { id […]

如何将值从javascript变量传递给razor变量?

如何将值从javascript变量传递给razor变量,是否有可能是asp.net mvc razor视图引擎? @{ int a = 0; } var b = … @a = b;

MVC 6 Tag Helpers Intellisense?

是否应该在Razor / MVC 6中为新的asp- tag助手提供Intellisense? 我正在关注Shawn Wildermuth关于Pluralsight的课程之一,所有function都正常,但我认为当我开始在标签上输入asp-作为属性时,我应该得到intellisense。 如果它应该在那里你有什么可能导致它消失的想法? 我正在使用Visual Studio 2015社区,以及用于Kestrel,Mvc和TagHelpers的.Net依赖项的RC1-Final版本。

MVC DropDownList不从模型中选择值

我已经阅读了这个问题ASP.NET MVC DropDownList没有从模型和答案中选择值,但我不知道我的问题的解决方案。 这是我的看法: @foreach (var adjusterLanguages in Model.adjusterLanguages) { @Html.DropDownListFor(model => Model.adjusterLanguages[i].languageID, (SelectList)ViewBag.ForeignLanguages) @Html.ValidationMessageFor(model =>Model.adjusterLanguages[i].languageID) i++; } 我可以确认正在填充模型数据(来自我的控制器): model.adjusterLanguages = adjLangs; 那么,如何在模型发送到视图时选择项目? 生成的html如下: –Select– Afrikanns Albanian Arabic –Select– Afrikanns Albanian Arabic