我将旧式asp.net MVC应用程序迁移到角度应用程序。
我创建了.html文件的子集,其中包含的模板将提供构建我的角度组件的HTML代码。
问题
我想把这个html文件放在文件夹中#34; Views"已存在于我的应用程序中。但是当我尝试访问.html文件时,我收到以下消息:
但如果我将.html文件放在此文件夹之外,我可以直接访问它们:
问题
你能告诉我为什么会这样吗?
无论如何,我可以访问文件夹中的html文件" Views"?
答案 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'是否正确吗?