1

当我在我的 C# ASP.Net 应用程序中更新 .dll 时,会优雅地处理转换,并且允许用户在代码切换到新代码之前完成他们的请求。

我的问题是静态变量在完成后是否会重置,或者它们是否会在更新过程中持续存在(当然,如果静态对象本身没有在代码中更新)?

4

2 回答 2

4

是的,它们丢失并重新创建,DLL 强制应用程序域停止并重新启动。所有缓存和其他项目都会根据使用/需要重新填充和创建。

如果这些值要保留任何实际时间量,您必须查看持久存储,因为您的 AppDomain 可以并且确实由于许多其他原因而重新启动。

于 2008-11-24T01:16:40.290 回答
0

是的,应用程序已重新启动。如果您需要保留这些值,您可能需要查看某种进程外缓存模型,例如进程外缓存、SQL Server 状态管理或位于应用程序之外的第三方缓存解决方案领域。

于 2008-11-24T01:21:08.097 回答