111,098
社区成员




namespace www7788softcom
{
[ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Multiple, InstanceContextMode = InstanceContextMode.PerCall, UseSynchronizationContext = false)]
[ServiceContract(Namespace = "")]
[SilverlightFaultBehavior]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
public class Data78Svc : Data78Back
{
/// <summary>
/// 执行服务方法
/// </summary>
/// <param name="kind"></param>
/// <param name="sid"></param>
/// <param name="cid"></param>
/// <param name="parms"></param>
/// <returns></returns>
[OperationContract]
public Stream Go(string kind, string sid, string cid, object[] parms)
{
//验证用户名...
MethodInfo method = typeof(Data78Back).GetMethod(kind );
if (method == null)
return StrToMS("方法不正确");
//调用方法的参数
object[] paras = { user, parms };
object result = method.Invoke(new Data78Svc(), paras);
return (MemoryStream)result;
}
/// <summary>
/// 主站GO
/// </summary>
/// <param name="kind"></param>
/// <param name="pars"></param>
/// <returns></returns>
private static string Go0(string kind, params object[] pars)
{
Console.WriteLine("0" + kind);
DateTime dStart = DateTime.Now;
string back = "";
Stream smback = new MemoryStream();
w78.Data78SvcClient dc = new w78.Data78SvcClient();
try
{
smback = dc.Go(kind, sid0, cid, pars);
using (MemoryStream ms = new MemoryStream())
{
smback.CopyTo(ms);
back = Encoding.UTF8.GetString(ms.ToArray());
}
}
catch
{
Line = -1;
Login(Uname, sPwd);
return "连接失败";
}
try
{
if (dc.State != System.ServiceModel.CommunicationState.Faulted)
dc.Close();
}
catch
{
dc.Abort();
}
DateTime dEnd = DateTime.Now;
double iLast = (dEnd.Ticks - dStart.Ticks) / 10000000;
if (iLast >= 2)
Console.WriteLine("超时" + iLast.ToString());
return back;
}