将Angularjs合并到ASP.NET MVC 5中

时间:2016-12-19 09:39:00

标签: angularjs asp.net-mvc-5

首先让我解释一下,我有.NET编程背景,我是Angularjs的新手。

我有一个MVC 5应用程序,我希望包含一个使用Angularjs作为单页面应用程序构建的新部分。

到目前为止,我有一个带有索引操作的MVC 5控制器。在Index.cshtml视图中是使用Angularjs创建的SPA,它使用路由器模块。 Angular调用其他html格式的页面。

我的问题是html页面引用这样的图像: <img src="img/image.png">但是当应用程序托管在根文件夹中时,路径不正确。

我需要这样做:<img src="@Url.Content("~/img/image.png")">格式化图像的正确路径,但我不能在html页面中这样做。

你能告诉我如何将它们从.html转换为.cshtml以使用Razor的帮助吗?另外我需要知道建议将这些页面相对于Index.cshtml放在标准的MVC 5应用程序中吗?

1 个答案:

答案 0 :(得分:0)

如果您希望AngularJs模板位于.cshtml(Razor)中,则需要为它们创建部分操作。在您的mvc控制器中创建一个操作,并像在普通MVC中一样返回视图。您需要考虑的是,您需要将布局设置为null,以便在显示这些部分视图时不会获得完整的布局。然后,在Angular中,您需要通过其完整路径引用此操作。