2023-05-23 16:13:17 +08:00
|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using System.Web;
|
|
|
|
|
using System.ServiceModel;
|
|
|
|
|
using WcfServiceAuthentication;
|
|
|
|
|
using DeiNiu.Utils;
|
|
|
|
|
using System.Net;
|
|
|
|
|
|
|
|
|
|
namespace DeiNiu.Wcf
|
|
|
|
|
{
|
|
|
|
|
public class basicService
|
|
|
|
|
{
|
2023-09-04 22:41:19 +08:00
|
|
|
|
protected static log4net.ILog log = log4net.LogManager.GetLogger("logCommon");
|
2023-05-23 16:13:17 +08:00
|
|
|
|
private int operId = 0;
|
|
|
|
|
protected string token = "";
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 字典立即生效,逻辑对象会重新实例化
|
|
|
|
|
/// </summary>
|
|
|
|
|
// protected static bool isDicReset = false;
|
|
|
|
|
|
|
|
|
|
protected int getOperId()
|
|
|
|
|
{
|
|
|
|
|
/*
|
|
|
|
|
if (operId > 0) //wince set auth in the each function
|
|
|
|
|
{
|
|
|
|
|
return operId;
|
|
|
|
|
}
|
|
|
|
|
*/
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
// LogHelper.debug(this.GetType(), " Service class initialized., operId was " + operId);
|
|
|
|
|
operId = OperationContext.Current.IncomingMessageHeaders.GetHeader<int>("UserId", "www.deinu.com");//wince won't have custom heads
|
|
|
|
|
// LogHelper.debug(this.GetType(), " Service class initialized., operId is " + operId);
|
|
|
|
|
|
|
|
|
|
return operId;
|
|
|
|
|
}
|
|
|
|
|
catch
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
WebHeaderCollection headerCollection = System.ServiceModel.Web.WebOperationContext.Current.IncomingRequest.Headers;
|
|
|
|
|
foreach (string item in headerCollection)
|
|
|
|
|
{
|
|
|
|
|
if (item == "UserId")
|
|
|
|
|
{
|
|
|
|
|
operId = Convert.ToInt32(headerCollection.Get(item));
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
catch
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return operId;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|