Questions tagged «asp.net-mvc»

ASP.NET MVC框架是一个开源Web应用程序框架和工具,可实现针对Web应用程序量身定制并基于ASP.NET技术基础的模型-视图-控制器(MVC)模式版本。

13
使用$ .ajax发布JSON数据时,如何提供AntiForgeryToken?
我正在使用下面这篇文章的代码: 首先,我将使用控制器操作的正确值填充数组变量。 使用下面的代码,我认为只需将以下行添加到JavaScript代码中,应该非常简单: data["__RequestVerificationToken"] = $('[name=__RequestVerificationToken]').val(); 该<%= Html.AntiForgeryToken() %>是在其正确的位置,动作有[ValidateAntiForgeryToken] 但是我的控制器动作一直在说:“无效的伪造令牌” 我在这里做错了什么? 码 data["fiscalyear"] = fiscalyear; data["subgeography"] = $(list).parent().find('input[name=subGeography]').val(); data["territories"] = new Array(); $(items).each(function() { data["territories"].push($(this).find('input[name=territory]').val()); }); if (url != null) { $.ajax( { dataType: 'JSON', contentType: 'application/json; charset=utf-8', url: url, type: 'POST', context: document.body, data: JSON.stringify(data), success: function() { refresh(); …


5
如何获取过滤器以重定向到其他操作?
RedirectToAction受保护,我们只能在动作内部使用它。但是,如果我想在过滤器中重定向? public class IsGuestAttribute: ActionFilterAttribute { public override void OnActionExecuting(ActionExecutingContext filterContext) { if (!Ctx.User.IsGuest) filterContext.Result = (filterContext.Controller as Controller) .RedirectToAction("Index", "Home"); } }

2
在ASP.net MVC 4中使用部分视图
我最近开始使用ASP.net MVC(4),但是我无法解决这个问题。我敢肯定,一旦您知道它就很容易。 我实质上是在索引视图中尝试执行以下操作: 在索引视图中列出类型为“ Note”的数据库中的当前项目(这很容易) 在同一索引视图中创建新项目(不是那么容易)。 因此,我认为我需要局部视图,并且已按如下所示创建了该视图(_CreateNote.cshtml): @model QuickNotes.Models.Note @using (Html.BeginForm()) { @Html.ValidationSummary(true) <fieldset> <legend>Note</legend> <div class="editor-label"> @Html.LabelFor(model => model.Content) </div> <div class="editor-field"> @Html.EditorFor(model => model.Content) @Html.ValidationMessageFor(model => model.Content) </div> <p> <input type="submit" value="Create" /> </p> </fieldset> } 在我原始的索引视图(Index.cshtml)中,我试图呈现此局部视图: @model IEnumerable<QuickNotes.Models.Note> @{ ViewBag.Title = "Personal notes"; } <h2>Personal notes</h2> <p> …

4
asp.net MVC部分视图控制器操作
我对Web应用程序开发非常陌生,我想我将从最新技术入手,因此我试图同时学习asp.net和MVC框架。对于MVC专业人士来说,这可能是一个非常简单的问题。 我的问题是,局部视图应该具有关联的操作RenderPartial()吗?如果是这样,那么当普通页面在局部视图上使用时,是否会调用此操作?

5
如何在ASP.NET MVC中禁用会话状态?
我想要一个非常轻量级的ASP.NET MVC网站,其中包括删除尽可能多的常规HttpModules并禁用会话状态。但是,当我尝试执行此操作时,出现以下错误: The SessionStateTempDataProvider requires SessionState to be enabled. 我在web.config中禁用了会话状态: <sessionState mode="Off" /> 我知道ASP.NET MVC使用TempData的会话状态,但是我不需要/想要TempData-我只想禁用会话状态。救命!

12
关于MVC验证的单元测试
在MVC 2 Preview 1中使用DataAnnotation验证时,如何在验证实体时测试控制器操作是否将正确的错误放入ModelState中? 一些代码来说明。一,动作: [HttpPost] public ActionResult Index(BlogPost b) { if(ModelState.IsValid) { _blogService.Insert(b); return(View("Success", b)); } return View(b); } 这是一个失败的单元测试,我认为应该通过但不能(使用MbUnit和Moq): [Test] public void When_processing_invalid_post_HomeControllerModelState_should_have_at_least_one_error() { // arrange var mockRepository = new Mock<IBlogPostSVC>(); var homeController = new HomeController(mockRepository.Object); // act var p = new BlogPost { Title = "test" }; …

5
asp.net MVC中的jQuery Ajax上传文件
我认为有一个文件 <form id="upload" enctype="multipart/form-data"> <input type="file" name="fileUpload" id="fileUpload" size="23" /> </form> 和一个ajax请求 $.ajax({ url: '<%=Url.Action("JsonSave","Survey") %>', dataType: 'json', processData: false, contentType: "multipart/mixed", data: { Id: selectedRow.Id, Value: 'some date was added by the user here :))' }, cache: false, success: function (data) {} }); 但是Request.Files中没有文件。Ajax请求出了什么问题?

5
MVC5声明Authorize属性的版本
我正在尝试使用MVC5和新的OWIN身份验证中间件在VS2013 RC中进行一些新操作。 因此,我习惯于使用该[Authorize]属性按角色来限制操作,但是我尝试使用基于声明/活动的授权,但找不到与其等效的属性。 是否有明显的我想念的东西,还是我需要自己动手?我有点希望开箱即用。 我要寻找的具体是[Authorize("ClaimType","ClaimValue")]我所想的东西。 提前致谢。

12
Html.EditorFor设置默认值
新秀问题。我有一个参数传递给创建视图。我需要使用默认值设置一个字段名称。@ Html.EditorFor(model => model.Id)我需要将此输入字段设置为名称ID,并将其默认值通过动作链接传递给视图。 因此,如何使用默认值设置此输入字段-@ Html.EditorFor(model => model.Id)。 请问以下工作?在数字5是参数的情况下,我将输入文本字段以设置默认值。 @Html.EditorFor(c => c.PropertyName, new { text = "5"; })

7
从ASP.NET MVC操作获取绝对URL
这可能是一个虚拟的问题,但我找不到明确的指示。我在MVC3 Web应用程序中有一个POCO类,其唯一目的是管理服务器中某些文件的备份。通常,它会创建一个备份并将文件名返回给控制器,该控制器会发送一封包含URL的电子邮件以进行下载。这可以正常工作,但是我无法建立要发送的绝对URL。无论使用哪种功能,我总是会得到一个相对URL,例如/Backup/TheFile.zip,而不是例如http://www.somesite.com/Backup/TheFile.zip。我试过了: VirtualPathUtility.ToAbsolute("~/Backup/SomeFile.zip"); HttpRuntime.AppDomainAppVirtualPath + "/Backup/SomeFile.zip"; Url.Content("~/Backup/SomeFile.zip"); 但它们都返回/Backup/SomeFile.zip之类的内容。任何的想法?

14
由@Html帮助程序生成的MVC中如何更改“数据值编号”消息验证
假设这个模型: Public Class Detail ... <DisplayName("Custom DisplayName")> <Required(ErrorMessage:="Custom ErrorMessage")> Public Property PercentChange As Integer ... end class 和视图: @Html.TextBoxFor(Function(m) m.PercentChange) 将继续这个HTML: <input data-val="true" data-val-number="The field 'Custom DisplayName' must be a number." data-val-required="Custom ErrorMessage" id="PercentChange" name="PercentChange" type="text" value="0" /> 我想自定义data-val-number错误消息,因为它PercentChange是,所以我猜它已生成Integer。我一直在寻找这样的属性来更改它,range或者任何相关的不起作用。 我知道可以编辑unobtrusive的js文件本身或在客户端覆盖它。我想更改data-val-number的错误消息,就像服务器端的其他消息一样。



10
无法加载文件或程序集HRESULT:0x80131515(将控制器添加到在网络驱动器上具有程序集引用的MVC项目中时)
我已经看到了:VSTS 2010 SGEN:错误:无法加载文件或程序集(HRESULT的异常:0x80131515),所有答案均无效。当我构建或其他任何东西时,它也不会出现。我可以很好地运行项目,当我尝试添加实体框架模板化控制器时会发生这种情况: 然后我得到这个错误: 所有项目文件都在我的网络共享上,因为这是我的文档驻留在我们工作中的位置。这是我尝试过的: 1)将项目设置中的Generator序列化程序集打开,关闭和自动。 2)使用以下代码将sgen.exe.config添加到C:\ Program Files \ Microsoft SDKs \ Windows \ v7.0A \ bin \ NETFX 4.0 Tools中: <configuration> <runtime> <loadFromRemoteSources enabled="true" /> </runtime> </configuration> 3)试图取消阻止程序集,但是在属性选项卡中没有取消阻止选项。 这些解决方案均无效。有谁知道我该如何解决这个问题???由于nuget或我自己的项目中的任何自定义程序集存在于网络空间中,因此会发生此错误,但仅当尝试添加EF模板控制器时才会发生。我可以很好地构建和运行程序。

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.