Angularjs 在基于Angular JS或SPA的应用程序中维护浏览器端的数据

Angularjs 在基于Angular JS或SPA的应用程序中维护浏览器端的数据,angularjs,Angularjs,我来自ASP.NETMVC和ASP.NETWebPages后台组,探索单页应用程序的概念和设计。在此过程中,我想了解一些项目,如使用AngularJS或主干JS开发的SPA应用程序,将从REST完整web服务(如ASP.NET web api等)获取数据。在ASP.NET中,数据被放置在缓存或ASP.NET会话中,以消除再次从数据库获取数据的往返。 如何在浏览器上实现或注意这一点?就是通过使用本地存储,会话存储HTML5项目。如果是这样,每个浏览器都有大小限制,那么如何管理相同的浏览器 编辑:我

我来自ASP.NETMVC和ASP.NETWebPages后台组,探索单页应用程序的概念和设计。在此过程中,我想了解一些项目,如使用AngularJS或主干JS开发的SPA应用程序,将从REST完整web服务(如ASP.NET web api等)获取数据。在ASP.NET中,数据被放置在缓存或ASP.NET会话中,以消除再次从数据库获取数据的往返。 如何在浏览器上实现或注意这一点?就是通过使用本地存储,会话存储HTML5项目。如果是这样,每个浏览器都有大小限制,那么如何管理相同的浏览器


编辑:我可能没有正确地发布这个问题,这是我的意图,我想完全迁移到ASP.NET,我想从最后开始使用Angular JS,其余的使用ASP.NET WebAPI。在此上下文中,假设我在初始加载页面期间使用RESTAPI检索了项目列表(一些数据)。之后,当导航到一个负责编辑特定项目的页面时,我不想丢失有关项目列表的数据或信息。我可以将项目列表存储在HTML5会话存储或本地存储中吗?这样,当它导航到显示项目列表的上一页时,我将从本地存储或会话存储中提取详细信息,而不是再次进行Restfull调用。

使用Angular和MVC可以创建出色的SPA。您可以在服务器端使用Angular进行路由和.net

我将试着给你一个架构的概述

Angular使用来自MVC控制器的ActionResult在templateUrl字段中使用RouteProvider定义路由,而不包括html文件

在MVC控制器中,返回所需的局部视图

你的问题是关于如何处理数据,下面是我如何处理的

创建访问数据库的API Rest,并从Angular控制器发出ajax请求。使用此功能,您可以从服务器获取、发布、编辑或删除数据。建议用于数据库访问

如果您对在.net会话变量中存储数据更感兴趣,则有两个选项:

  • 您可以在MVC控制器中处理从Angular调用的会话变量,创建或编辑它们,然后在视图中使用它们
  • 或者,您可以在MVC控制器中创建http post方法,并在单击按钮时从angular控制器发送json。数据被发送到服务器,使用.net,您可以存储该数据,处理会话变量,甚至返回一个json到angular,其中包含您想要发送回客户端的任何信息

  • 我希望这能让你大致了解一切是如何协同工作的

    看看角度服务/工厂,首先看看这个。
    您也可以在浏览器中使用localstorage,但请考虑如果数据频繁更改会发生什么情况。

    是的,如果您想在客户端中存储数据,请参阅optimus所说的angular services。