将Razor与托管在IIS上的ASP.NET一起使用(不是MVC)
我正在尝试在没有MVC的情况下使用Razor。。我创建了一个新的ASP.NET空Web应用程序,然后安装了以下软件包:将Razor与托管在IIS上的ASP.NET一起使用(不是MVC),asp.net,iis,razor,Asp.net,Iis,Razor,我正在尝试在没有MVC的情况下使用Razor。。我创建了一个新的ASP.NET空Web应用程序,然后安装了以下软件包:Microsoft.AspNet.Razor 然后,我在目录的根目录中得到了一个Index.cshtml,但当我启动站点时,我得到了以下错误: HTTP Error 403.14 - Forbidden A default document is not configured for the requested URL, and directory browsing i
Microsoft.AspNet.Razor
然后,我在目录的根目录中得到了一个Index.cshtml
,但当我启动站点时,我得到了以下错误:
HTTP Error 403.14 - Forbidden
A default document is not configured for the requested URL,
and directory browsing is not enabled on the server.
如果我添加一个Index.html
文件,它可以正常工作,但我想使用Razor。是否需要进行其他配置?我的web.config
如下所示:
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.5.1" />
<httpRuntime targetFramework="4.5.1" />
</system.web>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.5.2.14234" newVersion="1.5.2.14234" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
我正在使用Visual Studio 2013和IIS Express 8
注
我所做的只是创建一个新的空web应用程序,保留web API、web表单、未选中MVC、没有身份验证
已安装:Microsoft.AspNet.Razor
通过nuget安装
在根目录中创建Index.cshtml
页面,并在本地启动站点以重现错误
HTTP错误403.14-禁止
未为请求的URL配置默认文档,
服务器上未启用目录浏览
上述内容比“Razor”sytnax更能说明IIS/ASP.Net问题。您配置的站点是否已启用ASP.Net、AppPool(.Net 4)等?index.html之所以有效,是因为它只是IIS乐于提供的html页面,而不是特定于应用程序(ASP.Net)的csthtml
(或aspx
,vbhtml
)
- 不“需要”MVC-您可以将其愉快而有效地用于任何您想要的模型-应用程序(包括MVC)或“网站”(WebMatrix、网页等)
- 我从未在WebForms(aspx)页面上尝试过Razor,我也不认为我想尝试:),但如果您尝试过(或真的需要),下面是
- 请看我的答案。您的问题可能与您的资源映射有关。说明您的目的?它是用于生成完整的网页还是使用模板之类的东西来生成文档(如html文档)?如果你想从马匹嘴里听到它:不是因为他们说的是在.aspx页面中使用Razor语法(@),我只想让IIS呈现一个以html呈现的.cshtml页面吗?@TrueBlueAussie
Razor
语法并不“需要”控制器-正如BillBaffBoff所说的那样…我明白你的意思,但是添加整个MVC框架只是为了让Razor工作似乎有点冗长..我没有在WebForms或MVC中使用Razor,目前它只是一个空的ASP站点,有一个文件(Index.cshtml),当我使用VisualStudio13在IIS Express中运行它时,我得到了它error@BiffBaffBoff-您的意思是以VS或其他方式“使用IIS Express”(例如,手动创建IIS站点)?如果显式浏览index.chtml
,会发生什么情况?是的,IIS Express in VS.当我浏览/index.cshtml
时,它表示不允许服务器显示该文件类型。我让同事在他们的机器上尝试此操作,但他们都会遇到相同的错误。@biffbaffoff这表明您的“站点”未设置为处理cshtml文件(IIS/ASP.net设置和/或所需的程序集)。您的/bin
文件夹中是否有?