ASP.NET 本地化:resx 文件中的更改是否会导致会话被终止?
我在开发设置中的观察:
- 我有一个正在运行的 ASP.NET 应用程序,它显示来自 resx 文件的本地化资源。
- 我在应用程序运行时更改了 resx 文件
- 在页面刷新时,更改后的资源正确显示在 ui 中
- 会话被刷新终止
我正在使用 ASP.NET MVC3。 我正在使用 InProc 会话。 我正在 IIS Express 上通过 VisualStudio 2010 运行该应用程序。
上述行为通常是正确的,还是仅在我的开发设置中:
- resx 文件中的更改是否总是触发应用程序的重新编译,从而终止所有 InProc 会话?
- “生产”IIS 也是这种情况吗?
- 这是否在某种程度上依赖于某些配置?
- 将会话状态切换到stateserver或sqlserver是否可以解决这个问题。那么是否可以在应用程序运行时更改 resx 文件,使更改在重新加载时反映在 ui 中并仍然保留会话状态?
My observations in my development setup:
- I have a running ASP.NET application that displays localized resources from resx-files.
- I change the resx-files while the app is running
- Upon page refresh, the changed resources are correctly displayed in the ui
- The session was killed by the refresh
I am using ASP.NET MVC3.
I am using InProc sessions.
I am running the application through VisualStudio 2010 on IIS Express.
Is the above behavior generally true, or only on my development setup:
- Does a change in resx-files always trigger the recompilation of the application and consequently kill all InProc sessions?
- Is this also the case on "production" IIS?
- Is this somehow dependent on some configuration?
- Does switching session state to stateserver or sqlserver solve this problem. Is it then possible to change resx-files while the app is running, having the changes reflected in the ui on reload and still preserving session state?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
是的,看起来会话已被清除,因为需要使用新值重新创建缓存。
这里有一些关于它的讨论:
http://forums.asp.net/t/1091924 .aspx/1
看起来您可能必须解决它。
Yeah it looks like the session is cleared, since the cache needs to be re-created with the new values.
There is some discussion about it here:
http://forums.asp.net/t/1091924.aspx/1
Looks like you might have to work around it.