Vb.net中公共共享变量的奇怪行为

时间:2015-10-14 12:04:27

标签: vb.net shared

我有一个用vb.net编写的web应用程序,我使用公共共享变量将每个帖子上的变量值保存回服务器。我注意到我的应用程序中有一种奇怪的情况。让我通过以下示例解释:

  Public Shared totalScore as integer
  Private Sub CalculateTotal()
    method body..........
  totalScore = 45 (assuming the student gets 45)
  'totalScore value is stored in the database'
  after the processing i set totalScore back to 0
  end Sub

这是将totalScore设置为0之后的问题。我注意到,对于Web应用程序的第一个用户,一切都很好,但对于运行此子例程的后续用户,totalScore始终为0.

无论得分是多少。请向我解释公共共享变量及其对应用程序的影响。

尝试在微软无组织的圣经网站上阅读它,但可以把我的想法包围起来。非常需要解释,或者在回发之间保留数据的最佳方法是什么。

1 个答案:

答案 0 :(得分:1)

每次在浏览器中执行操作并在服务器上加载代码时,都会重新创建变量。在每次访问Web服务器之间,应该保留其他状态以提供可伸缩性。

如果您需要保持状态,则需要确定它是会话(仅适用于一个用户)还是应用程序。查看此文章以获取有关如何执行此操作的详细信息:http://www.c-sharpcorner.com/UploadFile/78d182/Asp-Net-state-management-techniques/