WCF MVC字段保持空白......为什么?

时间:2013-03-15 11:35:22

标签: c# asp.net-mvc web-services

测试

public string username { get; set; }
public void Test(string test)
{
    this.username = test;
}
public string Get()
{
     return this.username   
}

ITEST

[OperationContract]
public string Get();

[OperationContract]
public void Test(string test);

TestProject

var webapi3 = new v3.TestClient("BasicHttpBinding_IProductData1");
webapi3.Test("TestString");
var u = webapi3.Get();

问题

为什么u仍然是空的,我尝试的不是什么?

3 个答案:

答案 0 :(得分:4)

public void Test(string test) { this.username = test; // test not username? }

答案 1 :(得分:0)

第二个电话Get()可能会在另一个线程上被接听。如果您想在服务器上使用状态,则需要使username为静态。

您正在通过HTTP进行通信,这是一种无状态协议。

除了使字段静态之外还有其他选择,但这至少会使测试通过。

答案 2 :(得分:0)

我假设

public void Test(string test)
{
   this.username = username;
}

应该是:

public void Test(string test)
{
   this.username = test;
}