不从子目录提供的cshtml文件

时间:2014-12-29 22:47:01

标签: c# asp.net razor

首先,如果此问题事先得到了回答,我很抱歉,但我找不到有效的回复。

我在Visual Studio 2013中创建了一个非常基本的Web SITE,而不是应用程序或MVC或类似的东西。

默认文件为default.cshtml

1)当我在调试模式下运行时,没问题 2)当我发布到我的IIS 7服务器的wwwroot文件夹时,http://webserver/default.cshtml工作 3)当我发布到wwwroot的子文件夹时,http://webserver/folder/default.cshtml给出“不提供此类页面”。错误消息

我知道服务器CAN可以成功提供上面#2的.cshtml类型文件。

那么我错过了什么,它不会从子目录中提供.cshtml

1 个答案:

答案 0 :(得分:0)

cshtml文件由MVC路由提供,而不是由直接URL引用提供。 IIS不知道如何处理cshtml文件。

基本上,您只能在路由的Web应用程序中使用该文件类型,而不能在基本网站中使用。

在MVC中,URL将为http://webserver/somecontrollerhttp://webserver/,路由将选择运行和输出的cshtml个文件。

基于控制器名称,操作名称(在控制器上运行的方法),操作返回的内容以及任何路由映射,隐式选择呈现的实际cshtml文件。