使用AngularJS和ASP.NET MVC

4
当使用angularjs时,我通过ASP.NET MVC4提供主页索引页面。但我希望这是一个SPA。对于angularjs路由,这是否意味着我放弃了MVC的部分服务器端视图,只使用html页面作为我的angularjs“partials”视图?有人这样做过吗,如果有,你采取了什么方法?是简单的html页面与angularjs还是其他解决方案?

1
在第一次加载时,您应该从MVC提供索引页面,之后您应该仅依赖于Angular应用程序的HTML页面。只需提供静态HTML页面,而不使用asp.net基础设施。 - Ajay Beniwal
好的,那就是我想的...不过一个缺点是针对部分HTML视图可能会有一些漂亮的脚本和CSS包,加载这些内容也许也应该在主页上加载,因为它是单页应用程序。 - Nicros
是的,您必须在索引页面上加载所有内容。 - Ajay Beniwal
2个回答

5

达林所说的是真的。

我建议使用AngularJS与Web API配对,而不是标准MVC,因为这样更合适。你不需要MVC部分视图(因为它们是服务器端局部视图,而AngularJS是客户端基础的)。因此,所有的服务器操作将通过ApiController动作处理,包括json等内容,你可以像往常一样保留模型等。但是对于MVC视图,只需一个即可,所有的AngularJS单页面应用程序都将在其内部处理。


这实际上就是我所拥有的 :) web api正在处理所有与SQL服务器之间的数据,而我只是提供index.cshtml页面 - angularjs和路由与静态html将处理其余部分。 - Nicros

3
在SPA模型中,您只需提供包含所有Angular代码以执行动态页面更新的主视图。您的服务器端操作只能返回JSON数据给客户端,并由Angular发起AJAX调用进行消费。部分服务器端视图确实不再必要。

在某种程度上你是正确的,但如果你在使用asp.net MVC和AngularJS时没有利用MVC的优势,那么使用MVC的原因是什么呢?据我理解,你可以有效地将这两种技术结合起来构建一个更强大的Web应用程序。这里有一个简单的教程,演示了如何同时使用这两种技术:https://www.mindzgrouptech.net/2017/02/09/an-application-in-angularjs-with-asp-net-mvc/ - Anant Anand Gupta

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接