日期:2014-05-17  浏览次数:20520 次

.net怎么实现下边asp代码中Application和DateDiff的方法
'若其他操作员未进行生成出库指示操作或缓存已超过5分钟,则可以进行生成出库操作,当前时间记入缓存
If Application(objOrdInfo.ORD_NO) = "" or (Application(objOrdInfo.ORD_NO) <> "" and DateDiff("n",Application(objOrdInfo.ORD_NO),now()) >= 5) then
' 记录订单开始生成出库指示时间
Application(objOrdInfo.ORD_NO) = now()
  。。。。。。。。。。。。。。
  。。。。。。。。。。。。。。//中间的操作


'清除已当前处理完的缓存
Application.Contents.Remove(objOrdInfo.ORD_NO)  
End If '若其他操作员未进行生成出库指示操作或缓存已超过5分钟,则可以进行生成出库操作,当前时间记入缓存 IF 结束



------解决方案--------------------
C# code

if (Application[objOrdInfo.ORD_NO] == "" || ((Application[objOrdInfo.ORD_NO] != "" && new TimeSpan(((DateTime)Application[objOrdInfo.ORD_NO]).Ticks).Subtract(new TimeSpan(DateTime.Now.Ticks)).Duration().TotalMinutes >= 5)))
{
  // 记录订单开始生成出库指示时间
  Application[objOrdInfo.ORD_NO] = DateTime.Now;
   。。。。。。。。。。。。。。
    。。。。。。。。。。。。。。//中间的操作


     //清除已当前处理完的缓存
      Application.Remove(objOrdInfo.ORD_NO);
}