我正在创build一个MVC 3 Web应用程序。 我想在我的实体类上使用Data Annotations,然后在发送回服务器之前使用不显眼的客户端validation。 这在正常发帖时工作正常。 如果任何字段无效,我会得到validation和validation摘要。 不过,我想通过ajax和json发回信息。 我该如何手动validation客户端的表单,然后将我的ajax回发到服务器。 以下是我的代码的摘要版本。 public class Customer { [Required(ErrorMessage = "The customer's first name is required.")] public string FirstName { get; set; } [Required(ErrorMessage = "The customer's last name is required.")] public string LastName { get; set; } } <% using (Html.BeginForm()) { %> <%: Html.LabelFor(model => model.FirstName, "First […]
这可能是一个虚拟的问题,但我找不到一个明确的指示。 我在MVC3 Web应用程序中有一个POCO类,其唯一目的是pipe理服务器中某些文件的备份。 通常它会创build一个备份并将文件名返回给控制器,该控制器会发送一封包含用于下载的URL的电子邮件。 这工作正常,但我不能build立绝对的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 。 任何想法?
在Windows 2008 Server计算机上运行新的ASP.NET MVC应用程序(直接从VS 2015社区运行)时,请保持该错误。
你如何在ASP.NET MVC中声明全局variables?
我认为这是一个IIS错误,因为如果我在本地机器上运行该项目不会发生这种情况。 我有我的样式表~/Content/css 该目录中的任何文件都不会加载到页面上,当我直接导航到这些文件时,出现服务器错误: 401 – 未经授权:由于证书无效,访问被拒绝。 您无权使用您提供的凭据查看此目录或页面。 这只发生在那个目录,我没有访问任何其他文件的问题。 有什么我需要做的IIS7来阻止?
我有一个页面的应用程序 – 或多或less基于MVC5 SPA模板 – 使用承载令牌进行身份validation。 该网站也有一些传统的MVC页面需要安全,但使用cookieauthentication 。 在Startup.Auth中,我可以启用这两种types的授权: app.UseCookieAuthentication(new CookieAuthenticationOptions()); app.UseOAuthBearerTokens(OAuthOptions); 然而,这似乎有一个副作用,即每当从SPA发送一个AJAX请求时,它就发送头中的不记名令牌和 cookie。 而我真正想要的行为是, 只有不记名的令牌用于WebAPI调用,并且只有MVC调用的cookie。 我也想MVC调用redirect到一个login页面时,未经授权(设置为CookieAuthenticationOption),但显然,我不希望这种情况发生在进行API调用。 有一种方法可以在一个应用程序中使用这种types的混合模式身份validation吗? 也许通过path/路由filter?
假设我有时从服务器获取空数据,我想在DataTables中显示没有数据find消息? 这怎么可能?
这可能会变成只是需要另一双眼睛的情况。 我一定会错过一些东西,但是我不明白为什么这种东西不能被testing。 我基本上试图确保未经身份validation的用户不能访问该视图通过使用[Authorize]属性标记控制器,我试图用下面的代码来testing: [Fact] public void ShouldRedirectToLoginForUnauthenticatedUsers() { var mockControllerContext = new Mock<ControllerContext>() { DefaultValue = DefaultValue.Mock }; var controller = new MyAdminController() {ControllerContext = mockControllerContext.Object}; mockControllerContext.Setup(c => c.HttpContext.Request.IsAuthenticated).Returns(false); var result = controller.Index(); Assert.IsAssignableFrom<RedirectResult>(result); } 我正在寻找的RedirectResult是某种迹象表明用户正在被redirect到login表单,而是总是返回一个ViewResult和debugging时,我可以看到,即使用户是未经authentication。 难道我做错了什么? 在错误的级别testing? 我应该在路线上testing这种事情吗? 我知道[Authorize]属性正在工作,因为当我旋转页面时,login屏幕确实被强制在我身上 – 但是如何在testing中validation这一点? 控制器和索引方法非常简单,以便我可以validation行为。 我已经包括他们的完整性: [Authorize] public class MyAdminController : Controller { public ActionResult Index() { […]
我试图在VisualStudio 2012 Ultimate中创build一个MVC4空项目,但是我得到这个错误: “错误:此模板试图加载组件程序集'NuGet.VisualStudio.Interop,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'。”。
我有一个控制器生成包含html标记的string。现在,当我在视图上显示它时,它显示为包含所有标记的简单string。 我试图使用Html助手编码/解码来正确显示它,但它不工作。 string str= "<a href="/Home/Profile/seeker">seeker</a> has applied to <a href="/Jobs/Details/9">Job</a> floated by you.</br>"; 在我看来, @Html.Encode(str)