Tag: razor

如何在共享视图Error.cshtml中显示exception消息?

如果我从一个新的MVC 5项目开始,在web.config设置中,customErrors mode =“on”允许共享视图’Error.cshtml’在我强制(引发)exception时显示,但它只显示以下文本.. 。 错误。 处理您的请求时发生错误。 如何将信息传递到此视图以显示更多相关信息,例如发生了什么错误? 如果我使用Global.asax方法,我可以使用此视图吗? protected void Application_Error() ?

MVC-4 FileUpload成功消息

在上传文件后显示成功消息时遇到的问题很少。 我首先尝试使用ViewBag.Message,它运行良好,并在文件上传后显示Success消息,这就是我想要的。 但是后来我几乎找不到怎样的方法,几秒钟之后将该消息改回:“选择要上传的文件!” ,以便用户了解他现在可以上传新文件。 我试图实现一个javascriptfunction来代替处理成功消息。 问题在于成功消息然后在文件上载完成之前显示,这是不好的,如果它是一个非常小的文件,消息将只显示一毫秒。 你对我如何微调这个有什么建议吗? 我不确定我是否应该尝试使用javascript或viewbag或其他不同的东西? 我正在寻找的是成功上传后大约5秒钟显示的成功消息,然后再次更改回“选择要上传的文件”。 https://github.com/xoxotw/mvc_fileUploader using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Threading; using System.Web; using System.Web.Mvc; namespace Mvc_fileUploader.Controllers { public class HomeController : Controller { public ActionResult Index() { //ViewBag.Message = “Choose a file to upload !”; return View(“FileUpload”); } [HttpPost] public ActionResult FileUpload(HttpPostedFileBase fileToUpload) { if […]

MVC 4 Razor – 创建动态DropDownList

我正在尝试创建一个包含两个DropDownLists的视图。 第二个DropDownList中可用的选项取决于用户在第一个中选择的内容。 我将此数据传递给ViewBag中的视图,如下所示: List firstBoxChoices = ViewBag.firstBoxChoices; Dictionary<string, List> secondBoxDict = ViewBag.secondBoxDict; 第一个对象具有第一个DropDownList的选项。 当用户选择其中一个时,我需要从我的Dictionary中获取第二个DropDownList的相应选择列表。 我只是无法弄清楚如何实现这一目标。 如果我在Javascript onchange()函数中获得第一个DropDownList的新选择,似乎没有任何方法可以将此值用作我的C#字典的键。 当然,我已经在网上看到了这个function,所以我知道它必须以某种方式。 我怎样才能做到这一点? 谢谢!

Html.BeginForm在IE浏览器中发布HttpGet动作而不是HttpPost,在Chrome和Firefox中很好

我的Razor视图中有以下内容: @using (Html.BeginForm(“Edit”, “MyController”, FormMethod.Post)) {   @Html.ValidationSummary(false) @Html.EditorFor(x => x.Role, MVC.Shared.Views.EditorTemplates.KeyValuePairSelectList, new { SelectListOptions = Model.RoleSelectList }) @Html.EditorFor(x => x.Trust, MVC.Shared.Views.EditorTemplates.KeyValuePairSelectList, new { SelectListOptions = Model.TrustSelectList.OrderBy(x => x.Text) }) @Html.EditorFor(x => x.GmcCode) } 在我的控制器中我有 [HttpGet] public virtual ActionResult Edit(string id) { } [HttpPost] public virtual ActionResult Edit(ViewModel viewModel) { } 在Firefox和Chrome中,一切正常,但在IE中提交表单时,HttpGet操作被触发而不是HttpPost。 调用堆栈或IE开发人员工具控制台中没有线索。 有什么明显我错过了吗?

在View中访问会话变量

由于我无法在View中访问会话变量,我想知道是否需要在视图中添加更多内容以使其工作? 在我的观点内: @Session[ComputerNumber].ToString() 控制器: Session[“ComputerNumber”] = game.RandomNumber(); 错误消息: 编译器错误消息:CS0103:当前上下文中不存在名称“ComputerNumber”

如何在mvc3 asp.net中的表单提交上发送文本框值作为参数

我在MVC3中创建了局部视图。 现在我想按下提交按钮发送文本框值作为表单提交的参数 我的部分观点是这样的 @using (Html.BeginForm(“Searching”, “AccountManager”, FormMethod.Post, new { name =”Wat should i put here” })) { } 我的控制器就像 public viewResult Searching(string name) { // bussiness logic return view(); }

选择mvc 4下拉默认值

我想在下拉列表中选择默认值,其中policyId = 7但它没有选择该值,我做错了什么? 控制器: var pm = new ManagerClass(); IEnumerable po = pm.GetDataFromDb(); IEnumerable Policies = new SelectList(po, “PolicyID”, “PolicyName”, new { PolicyID = 7 }); ViewBag.Policies = Policies; 视图: @Html.DropDownListFor(m => m.PolicyID, ViewBag.Policies as IEnumerable, new { @class = “dropdown-field”})

需要截断Razor HTML DisplayFor Helper

我试图截断一个有时非常大的文本字段,或者在其他时候从数据库中删除它,即 @Html.DisplayFor(modelItem => item.MainBiography) 并在最后用三个点替换。 我已经尝试过子串函数但不断出错。 任何指针,谢谢! 更新: ……并不是非常重要,所以我尝试使用 @Html.DisplayFor(modelItem => item.MainBiography.Substring(0,10)) 并获取以下错误代码: System.InvalidOperationException未由用户代码处理HResult = -2146233079 Message = Templates只能用于字段访问,属性访问,单维数组索引或单参数自定义索引器表达式。 Source = System.Web.Mvc –

ServiceStack在没有MVC的情况下启用Razor intellisense支持

我已经将SS.Razor安装到我的测试项目中。 如果我只是更改default.htm – > cshtml,它可以工作,但没有vs intellisense语法支持。 因此剃刀代码是纯文本黑色和白色。 我想知道如何在不打开作为.net MVC项目的项目的情况下打开Razor。 谢谢! 编辑—————————————— 这是我的web.config (注意add extension =“。cshtml”……有…) <!– For a description of web.config changes for .NET 4.5 see http://go.microsoft.com/fwlink/?LinkId=235367. The following attributes can be set on the tag. –> <!– The section enables configuration of the security authentication mode used by ASP.NET to identify an incoming user. […]

剃刀 – 使用foreach,每隔n项插入html

我正在使用Razor和MVC 5在我的页面上输出大量项目。这是我目前所拥有的: @foreach (var item in Model.Items) { @item.Name } 我想要做的是输出这个: Item 1 Item 2 Item 3 Item 4 Item 5 Item 6 Item 7 Item 8 Item 9 Item 10 Item 11/a> Item 12 我需要在div标签中对每4个项目进行分组。 我怎么能在剃刀中做到这一点?