有没有初始化WebService的可能性。
我正在寻找一种仅在对WebService进行首次调用时运行的方法。 在.NET中是否有类似的东西?
有没有初始化WebService的可能性。
我正在寻找一种仅在对WebService进行首次调用时运行的方法。 在.NET中是否有类似的东西?
如果您需要在客户端首次连接 Web 服务时进行“初始化”:
创建一个 Initialise
方法,返回一个标记(如 GUID),然后在调用您的 Web 服务的实际“工作”方法时需要使用该标记。这样可以确保对于该客户端,服务始终处于初始化状态。
如果您需要在第一次调用 Web 服务时进行初始化:
向您的服务添加一些代码,作为私有方法,每个公共方法的顶部都会调用它。在其中检查是否存在某些内容,例如注册表项、文件、数据库记录或其他持久值。如果不存在,则执行初始化并创建“某些内容”。
如果您需要在 IIS 上次回收/启动应用程序池后的第一次调用时初始化:
为该类创建一个静态构造函数,在首次实例化时运行该静态构造函数并执行初始化操作。
在Visual Studio中创建WebService应用程序时,默认情况下会添加一个名为“Service”的类。当您查看此类(Service.cs)的代码时,您将看到一个构造函数(“public Service()”)带有两个被注释掉的行。您可以在这里放置初始化代码,或者调用您在Service类中定义的私有方法。仅当客户端第一次调用Service类中的任何WebMethod时,才会调用此构造函数。
嗯,如果你想要的是J2EE初始化的等效物,那么就没有了...然而,每个Web应用程序都托管在一个应用程序域中。不时地,应用程序可能会被回收,新的应用程序域可能会被创建...