c# Web服务和全局变量

本文关键字:全局变量 服务 Web | 更新日期: 2023-09-27 18:18:18

我有一个问题,让我的全局变量工作在我的客户端应用程序。

在web服务中,我有以下代码:

public class MyWebService: System.Web.Services.WebService
{
    public static string test = String.Empty;
    ....

在我的客户端,我有这样的代码:

MyService.MyWebService client = new MyService.MyWebService()
{
    client.test="test";
};

在客户端我正在接收

"MyWebService不包含test…等的定义";

可以在web服务中使用全局变量吗?如有任何帮助,不胜感激。

谢谢!

c# Web服务和全局变量

为了在客户端可见,你必须在webservice中公开getter(或setter)。即:

public class MyWebService: System.Web.Services.WebService
{
    public static string test = String.Empty;
    public string GetTest() {
      return test;
    }
    public void SetTest(string test) {
      MyWebService.test = test;
    }
}
如果您计划同时有更多的客户端,还可以阅读一些关于线程安全的主题。

尽管看起来您在调用web服务时实际上使用了类,但实际上并非如此。Web服务不知道变量的概念。你所能做的就是调用方法。