【发布时间】:2014-10-22 13:57:43
【问题描述】:
我正在开发一个必须在服务器端使用 VB.NET 的应用程序。 基本上,我使用 AJAX 从 JavaScript 调用 WebMethods。 (更准确地说是JQuery的AJAX函数)
虽然一切都很好,而且我在接收和上传数据方面也没有问题,但仍有一些事情困扰着我。
即使在我停止运行项目之后,我仍然保留客户端 WebMethods 的所有功能。事实上,我可以停止项目运行,然后按下“添加到购物车”客户端,该客户端调用一个将一些记录添加到数据库中的 WebMethod。如果我然后检查我的数据库,新记录就在那里,即使项目没有运行。
我想我至少可以检查会话是否处于活动状态,以防止这种情况发生,但无济于事。有谁知道是什么导致了这种行为?
这是我检查会话是否仍然存在的方式:
<WebMethod()> Public Shared Function AddToCart(ByVal itemCode As String, ByVal company As String) As String
If (HttpContext.Current.Session("spusrid") IsNot Nothing) Then
'//Its all good keep going!
Else
Return "ERROR-20"
End If
'//Remainder of code which adds Item to cart.
End If
如果有帮助,我将在本地运行该项目。 我只是担心这种行为会持续到现场。
【问题讨论】:
-
您的意思是项目何时停止在 Visual Studio 中运行?您是在本地计算机上还是在远程环境中运行它?
-
我编辑了我的帖子,是的,我在本地运行它。我只是担心这种行为会持续到现场。
-
“即使在我停止运行项目之后”...听起来你停止了 Visual Studio 调试器,而不是你真正的应用服务器很可能是 IIS
-
在非 VS 环境中部署到 IIS 时不会发生这种情况,因为它将以不同的方式运行。正如 Jason 的回答所描述的,这只是一个调试问题。
标签: javascript asp.net ajax vb.net webmethod