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
{
protected static log4net.ILog log = log4net.LogManager.GetLogger("logCommon");
private int operId = 0;
protected string token = "";
///
/// 字典立即生效,逻辑对象会重新实例化
///
// 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("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;
}
}
}