asp.net lock解决思路

asp.net lock
我有一段代码求大虾看有木有什么问题。

private static object lockobj = new object();
private static int StepCount = 0;

 public static string CreateOrderD(string CarrierCode)
        {
            lock (lockobj)
            {
                StepCount++;
            }

            if (StepCount > 99999)
            {
                StepCount = 0;
            }

            return CarrierCode + DateTime.Now.ToString("yyMMddHHmmss") + "A" + StepCount.ToString("D5");
        }



大批量调用CreateOrderD()这个方法的时候,会出现重复复重复的ID,但是我已经加了lock 。 难得没锁住?
求大虾指点一二。谢谢~~
------解决思路----------------------
我调用结果正常呢。
------解决思路----------------------
全部code都放到lock中去。
------解决思路----------------------
web的话,网站回收了,或者其他原因,肯能造成,再次初始化。