无法访问物理HTML文件

时间:2017-06-28 13:59:31

标签: c# html asp.net-mvc

我将旧式asp.net MVC应用程序迁移到角度应用程序。

我创建了.html文件的子集,其中包含的模板将提供构建我的角度组件的HTML代码。

问题

我想把这个html文件放在文件夹中#34; Views"已存在于我的应用程序中。但是当我尝试访问.html文件时,我收到以下消息:

enter image description here

但如果我将.html文件放在此文件夹之外,我可以直接访问它们:

enter image description here

问题

你能告诉我为什么会这样吗?

无论如何,我可以访问文件夹中的html文件" Views"?

4 个答案:

答案 0 :(得分:1)

尝试在RouteConfig中添加显式忽略

routes.IgnoreRoute("{file}.html");

这应该可以防止默认路由生效

答案 1 :(得分:1)

总而言之,Views文件夹是一个特殊的文件夹,其中包含由ASP.NET MVC路由的操作所使用的模板。因此,您无法使用它来保存要直接使用的文件。

我建议你放弃.NET Framework,因为你要使用Angular。

如果这不是一个选项,或者您想要保留ASP.NET MVC功能,那么只需使用另一个文件夹(就像您已经通过将Templates文件夹移动到根目录一样)。

答案 2 :(得分:0)

为了完成这项工作,我建议你在你的html文件中使用html标记并将其放在.cshtml视图中,你将使用家庭控制器中的GET动作进行渲染(正如你在MVC模式)。

实现此目的的另一种方法(我不推荐)是将您的html文件添加到可部署文件夹(如javascript文件的js文件夹),而不是直接使用直接调用文件链接,但是你会失去MVC模式的任何功能。

希望这有帮助。

答案 3 :(得分:0)

由于html文件在views文件夹中工作,你可以在'Views'文件夹后检查路径,即'Editor / V2 / Templates'是否正确吗?