C# 我可以在HTTPGET的内存中保存数据吗?

C# 我可以在HTTPGET的内存中保存数据吗?,c#,angular,asp.net-web-api,C#,Angular,Asp.net Web Api,我通过对网格页面更改的api调用从服务器调用数据。调用此方法时,我动态获取所有列的表模式,并在角度方面使用它进行其他工作 问题是我只需要获取一次表数据 如何将数据保存在内存中,以便用户在客户端更改页面时,不必再次访问数据库来获取模式数据 [Route("api/MyRoute/GetData/{Skip}/{Take}")] [HttpGet] [AllowAnonymous] public HttpResponseMessage GetData

我通过对网格页面更改的api调用从服务器调用数据。调用此方法时,我动态获取所有列的表模式,并在角度方面使用它进行其他工作

问题是我只需要获取一次表数据

如何将数据保存在内存中,以便用户在客户端更改页面时,不必再次访问数据库来获取模式数据

 [Route("api/MyRoute/GetData/{Skip}/{Take}")]
        [HttpGet]
        [AllowAnonymous]
        public HttpResponseMessage GetData(string Skip, string Take)
        {
            try
            {
                if (Result == null)
                {
                    Result = DynamicSqlQuery(Convert.ToInt32(Skip), Convert.ToInt32(Take));
                }
}

如果您不想将数据保存在角度端,那么您可以在服务中进行http调用

dataStructure = [];

getDataStructure() {

   if (this.dataStructure) {
      return this.dataStructure;
   }else{

  return this.http.get<any>(
           this.url + 'values',
                { headers: headers }
              ).pipe( 
                tap( data => this.cachedData = data )
              );

   }                        
}
dataStructure=[];
getDataStructure(){
if(此.dataStructure){
返回此.dataStructure;
}否则{
返回this.http.get

您可以在日志中看到,第一个调用是从服务器获取的,然后是从缓存获取的