希望有人可以帮助我。我有一个方法(user_login),而不是提示用户登录,然后生成并返回发票和令牌。
问题是如果用户已经登录(我将它保存在列表中),则不能调用方法 svr.logonex。我应该从前一个实例中检索值。我想我必须保存 svr 变量,但我不知道该怎么做。任何帮助将不胜感激。谢谢
这是代码:
public EPS30Ora.LogonResult User_Login(input_params inputparams)
{
EPS30Ora.EPS30Svr svr = new EPS30Ora.EPS30Svr();
if (Users.Exists(Username => Username.Username.Equals(inputparams.Username)))
{
List<input_params> selected = Users.Where(Username => Username.Username.Equals(inputparams.Username)).ToList();
svr.PrepareByMoney(selected[0].ck, 1, inputparams.meter_number, 10, 0, ref cal);
}
else
{
Log_Res = svr.LogOnEx("EDEESTE", inputparams.VSID, inputparams.Username, inputparams.Password, "EPS30Ora", ref inputparams.ck);
if (Log_Res == EPS30Ora.LogonResult.psOK)
{
try
{
Users.Add(inputparams);
object tr_bl = svr.GetInvoiceData(inputparams.ck, svr.Confirm(inputparams.ck));
}
catch (System.Runtime.InteropServices.COMException ex)
{
Trace.WriteLine("Se ha producido una excepción: " + ex);
}
}
}
return Log_Res;
}