2
我尝试使用webservices构建基于客户端的桌面应用程序。当我尝试通过会话发送List时遇到问题。即使会话已创建,但返回会话的引用不再存在。C#应用程序和asp.NET会话
[WebMethod(EnableSession = true)]
public void dodajdolisty(string login) {
bool jest = false;
if (Session["uzytkownicy"] != null) {
listaOsob = (List<string>)Session["uzytkownicy"];
foreach (string s in listaOsob) {
if (s == login) { jest = true; break; }
}
if (! jest) {
listaOsob.Add(login);
Session["uzytkownicy"] = listaOsob;
}
}
else {
listaOsob.Add(login);
// the debugger shows that the session has been created
Session["uzytkownicy"] = listaOsob;
}
}
public List<string> pobierzzlisty() {
List<string> list = new List<string>();
list = (List<string>)Session["uzytkownicy"]; // session is null
return list;
} // null
我该如何解决这个问题?
哪里'dodajdolisty()'和'方法pobierzzlisty()'被称为? PS:**爱**这些名字 – Yuck 2012-01-05 13:22:00
例如在这里(C#应用程序使用WSDL)'web.dodajdolisty(“ddddd”); foreach(web.pobierzzlisty()中的字符串s)///错误{ listView1.Items.Add(s); // web是由WSDL.exe生成的类 }' – quba88 2012-01-05 13:25:25
不建议将不可序列化的对象放入会话集合中。它仅适用于内存中会话状态,但不适用于SQL Server会话状态提供程序,因为它不能被序列化。这只是一个警告,所以如果你出于任何原因计划稍后更改会话状态提供程序。 – Chris 2012-01-05 13:26:59