首先,如果此问题事先得到了回答,我很抱歉,但我找不到有效的回复。
我在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
?
答案 0 :(得分:0)
cshtml
文件由MVC路由提供,而不是由直接URL引用提供。 IIS不知道如何处理cshtml
文件。
基本上,您只能在路由的Web应用程序中使用该文件类型,而不能在基本网站中使用。
在MVC中,URL将为http://webserver/somecontroller
或http://webserver/
,路由将选择运行和输出的cshtml
个文件。
基于控制器名称,操作名称(在控制器上运行的方法),操作返回的内容以及任何路由映射,隐式选择呈现的实际cshtml
文件。