我有一个Web服务,我用它从数据库中收集一些信息。只是几个字符串。但是,而不是返回我的功能。我想制作一个我以后可以调用的get函数。但是,在输入一些断点之后,一旦调用从刚从数据库中拉出它们的服务函数返回到我的主项目,我所存储的变量似乎变为null。
显然,我不确定网络服务是如何运作的。是否有一种特殊的方法来设置会话变量?
感谢
[WebMethod]
public String getDemogs()
{
return Demogs;
}
[WebMethod]
public void LoadUserSites(string username, string siteUse)
{
// Declare the SslConnection class variable.
SqlConnection sSitesConn = new SqlConnection(Util.ConStrEpcrProd);
SqlCommand sSitesCmd = new SqlCommand();
sSitesCmd.Connection = sSitesConn;
SqlDataReader objSitesReader;
try
{
sSitesConn.Open();
if (siteUse == "Main")
{
sSitesCmd.CommandText = "SELECT AgencyName, Demog FROM dbo.UserAdminPermissions WHERE UserName = '" + username + "'";
objSitesReader = sSitesCmd.ExecuteReader();
// Reset the string...
Demogs = string.Empty;
Agencies = string.Empty;
while (objSitesReader.Read())
{
Demogs += objSitesReader["Demog"].ToString() + ",";
Agencies += "'" + objSitesReader["AgencyName"].ToString() + "',";
}
objSitesReader.Close();
objSitesReader.Dispose();
}
finally
{
sSitesConn.Close();
sSitesConn.Dispose();
sSitesCmd.Dispose();
}
}
答案 0 :(得分:0)
Demogs
在调用之间不可用。您需要将其存储在其他地方(会话,任何地方)。每次调用服务时,您都会获得服务类的新实例。