Tag: asp.net mvc

在Windows 8的IIS 8上与.NET 4.5的MVC 4网站给403.14禁止的错误

我有一个使用MVC 4和.NET框架4.5在Visual Studio 2012中构build的网站。 当我尝试在运行Windows 8 Pro的机器上通过IIS 8运行它时,出现403.14错误。 它说 “禁止Web服务器configuration为不列出此目录的内容。 最有可能的原因:没有为请求的URLconfiguration默认文档,并且服务器上没有启用目录浏览。 以下是我尝试过的一些不起作用的东西: 在这个和Framework64目录中运行%windir%\ Microsoft.NET \ Framework \ v4.0.30319 \ aspnet_regiis.exe -i和%windir%\ Microsoft.NET \ Framework \ v4.0.30319 \ aspnet_regiis.exe -ir 。 这就给出了这个错误:“这个版本的操作系统不支持这个选项,pipe理员应该使用”打开/closuresWindowsfunction“对话框,服务器pipe理器pipe理工具,或者使用IIS8来安装/卸载ASP.NET 4.5 dism.exe命令行工具。有关更多详细信息,请参阅http://go.microsoft.com/fwlink/?LinkID=216771 。 链接转到一个关于Windows Server 2012的页面,这没有任何帮助。 我无法在iis 8的“打开或closuresWindowsfunction”对话框中find特定设置。与.net 4.5相关的所有内容都已打开。 添加到Web.config中。 这给出了错误:“这个configuration部分不能用在这个path,当部分locking在父级别时,会发生这种情况,默认情况下(overrideModeDefault =”Deny“),或者使用overrideMode =“拒绝”或传统allowOverride =“false”。“ 我已经确定.net 4.5被安装在服务器上(安装程序说它是内置到Windows 8中,不需要安装)。 应用程序池是使用.net 4.0的默认池,集成pipe道,启用了32位应用程序。 我发布到默认目录(inetpub \ wwwroot)和那里工作正常的默认网站。 在“打开或closures窗口function”中打开HTTPredirect 任何人都可以提供更多的见解? […]

哪里是保存用户上传图片的最佳地点

我有一个网站,显示画廊。 用户可以从networking上传自己的内容(通过inputurl),或从电脑上传图片。 我在第一个用例的数据库中存储的URL,但我需要找出如果用户从他们的计算机上传,存储实际图像的位置。 这里有什么build议或最佳做法,我应该在哪里存储这些? 我应该将它们保存在appdata或内容文件夹中吗? 他们是不是应该和网站一起存储,因为这是用户内容?

asp.net mvc – 与

这些东西是一样的吗? [HttpPost/HttpGet] vs. [AcceptVerbs(HttpVerbs.Post/Get)] 如果不是在哪里有区别?

Html.ValidationSummary(false,“message”)总是显示,即使在页面加载

我正在使用客户端validation,我希望下面的消息只显示当我有一个错误。 我试图使用这个一般的错误,如果任何领域是无效的。 目前 “* 表示必填项” 在validation之前总是显示。 <%: Html.ValidationSummary(false, "* denotes required field.")%> 我使用模型绑定在客户端和MVC上执行validation。

在asp.net mvc中以什么顺序执行filter

在MVC中,我们可以使用不同的filter来修饰操作方法 [HttpPost] [Authorize] public ActionResult mymethod(){} HttpPost派生自MethodSelectorAttribute (可能间接), Authorize派生自ActionFilterAttribute 。 我的问题是:他们在MVC请求pipe道中执行的顺序? 我试图去searchMVC源代码,但没有find相关的代码位。

configurationASP.NET MVC进行针对AD的身份validation

什么是根据Active DirectoryvalidationASP.NET MVC应用程序用户的高级步骤? 我认为是这样的: 修改web.config以使用Windows身份validation configurationweb.config以使用ActiveDirectoryMembershipProvider configurationweb.config以使用在AD中查找的自定义RoleProvider 上面看起来是否合理,如果是的话,我在哪里放置有效的用户检测逻辑? 在我的情况下,有效的用户是特定AD域中的某个人。

asp.net mvc Html.ActionLink()保持路线的价值,我不想要的

在我看来,我有以下的ActionLink <%= Html.ActionLink("LinkText", "Action", "Controller"); %> 并创build以下URL http://mywebsite.com/Controller/Action 假设我在最后添加了一个ID: http : //mywebsite.com/Controller/Action/53并导航到页面。 在这个页面上我有上面指定的标记。 现在,当我查看它创build的URL时,它看起来像这样: http://mywebsite.com/Controller/Action/53 (注意添加ID) 但我想要它删除ID,看起来像它原来的,就像这个http://mywebsite.com/Controller/Action (在这里通知没有ID) 任何想法如何我可以解决这个问题? 我不想使用硬编码的URL,因为我的控制器/操作可能会改变。

为什么要使用@ Url.Content(“〜/ blah-blah-blah”)?

我无法理解我可以从ASP.NET MVC中的Url.Content()方法获得的Url.Content() 。 例如,你看到src='@Url.Content("~/Contents/Scripts/jQuery.js")' 。 我为什么要用它? 有什么理由可以使用它? 使用像src='/scripts/jquery.js这样简单的旧的简单引用有什么好处,优点等等? 更新:根据答案,我想知道是否有任何其他原因使用它,而不是处理虚拟文件夹? 因为我还没有看到使用过多的虚拟应用程序(当然这并不意味着它没有被使用太多)。

以强types的方式获取属性的属性

美好的一天! 我有这样的方法来获得[DisplayName]属性的值(直接附加或使用[MetadataType]属性)。 在极less数情况下,我需要在控制器代码中获得[DisplayName] 。 public static class MetaDataHelper { public static string GetDisplayName(Type dataType, string fieldName) { // First look into attributes on a type and it's parents DisplayNameAttribute attr; attr = (DisplayNameAttribute)dataType.GetProperty(fieldName).GetCustomAttributes(typeof(DisplayNameAttribute), true).SingleOrDefault(); // Look for [MetadataType] attribute in type hierarchy // http://stackoverflow.com/questions/1910532/attribute-isdefined-doesnt-see-attributes-applied-with-metadatatype-class if (attr == null) { MetadataTypeAttribute metadataType = (MetadataTypeAttribute)dataType.GetCustomAttributes(typeof(MetadataTypeAttribute), true).FirstOrDefault(); if […]

不显眼的客户端validation使用fluentvalidation和asp.net mvc LessThanOrEqualTo不发射

我有以下规则 第一个是使用不显眼的客户端validation工作,第二个不是 任何想法为什么? RuleFor(x => x.StartDate) .LessThanOrEqualTo(x => x.EndDate.Value) .WithLocalizedMessage(() => CommonRes.Less_Than_Or_Equal_To, filters => CommonRes.Start_Date, filters => CommonRes.End_Date); RuleFor(x => x.StartDate) .GreaterThanOrEqualTo(x => x.AbsoluteStartDate) .LessThanOrEqualTo(x => x.AbsoluteEndDate) .WithLocalizedMessage(() => CommonRes.Between, filters => CommonRes.Start_Date, filters => filters.AbsoluteStartDate, filters => filters.AbsoluteEndDate);