Asp.net mvc 在ASP.NET MVC应用程序和WEB API性能中缓存编程创建的ResX文件

Asp.net mvc 在ASP.NET MVC应用程序和WEB API性能中缓存编程创建的ResX文件,asp.net-mvc,caching,asp.net-web-api,resx,Asp.net Mvc,Caching,Asp.net Web Api,Resx,在我的ASP.NET MVC 4应用程序中,我使用了两种ResX文件:“右键单击/new/ResX”以支持多种语言,以及基于用户操作以编程方式创建的ResX文件。通过编程创建的resx文件由ResXResourceWriter类在自定义(用户)文件夹中创建,并由ResXResourceReader类读取 我的问题是: 1、这些通过编程创建的资源文件是由web服务器自动缓存的,还是应该使用MemoryCache和MemoryStream类 2、动态创建resx文件会导致重新编译吗?如果是,我可以使

在我的ASP.NET MVC 4应用程序中,我使用了两种ResX文件:“右键单击/new/ResX”以支持多种语言,以及基于用户操作以编程方式创建的ResX文件。通过编程创建的resx文件由ResXResourceWriter类在自定义(用户)文件夹中创建,并由ResXResourceReader类读取

我的问题是:

1、这些通过编程创建的资源文件是由web服务器自动缓存的,还是应该使用MemoryCache和MemoryStream类

2、动态创建resx文件会导致重新编译吗?如果是,我可以使用XML而不是ResX。XML文件会被服务器缓存吗

在WEB API方面,我的API控制器从编程创建的资源文件返回一个字符串。AJAX方法处于“for”循环中,因此通过“页面请求”,它将向控制器发送许多AJAX请求

我的问题是:

1、这个解决方案有效吗?不会因为需要许多api控制器实例来提供“一整页加载”(一行大约1-10个单字符串请求)而导致性能下降吗


2,如果上面描述的方法效率不高,我可以一次性发送resx文件中的所有字符串,客户端脚本将完成其余工作。如果这仍然不好,我应该使用哪种解决方案?

不确定是否要使用用户生成的resx文件?它们是特定于用户的吗? 或者只是一个用户为每个人翻译

但对于动态resx文件,我建议使用DB提供程序


至于WebAPI:我将进行一个调用,用所有字符串响应。否则您会有大量的请求,这肯定会很慢。

用户可以创建javascript/jquery/ajax使用的动态内容,“来宾”用户可以看到这些动态内容。动态创建的resx文件保存用户编写的文本,它们将在用户文件夹中生成。ajax功能调用web api方法,这些方法从用户的resx文件中读取所选语言的文本。谢谢你对WebAPI的回答:我会重写它。好的,这是我会放进数据库的东西。如果有帮助的话,请随意接受我的回答。