.net保存数据时,系统时间莫名其妙的提前,是何原因
这种情况一年出现不了几次,回收程序池就会恢复正常。保存的方法如下:
public string add(string tableName,Hashtable ht)
{
string errorStr = null;
DataSet ds=new DataSet();
DataTable dt=new DataTable();
string sql = "Select Top 1 * From " + tableName + "";
SqlDataAdapter sqlAd = new SqlDataAdapter(sql, Conn);
SqlCommandBuilder thisBuilder = new SqlCommandBuilder(sqlAd);
sqlAd.Fill(ds,"dtTemp");
dt = ds.Tables["dtTemp"];
DataRow dr;
dr = dt.NewRow();
IDictionaryEnumerator et = ht.GetEnumerator();
while (et.MoveNext())
{
if (!IsNullOrEmpty(et.Value))
dr[et.Key.ToString()] = et.Value.ToString();
else
dr[et.Key.ToString()] = DBNull.Value;
}
dt.Rows.Add(dr);
try
{
sqlAd.Update(ds, "dtTemp");
}
catch (Exception e)
{
if (e != null) errorStr = e.ToString();
}
sqlAd.Dispose();
return errorStr;
}
程序调用:
Hashtable ht = new Hashtable();
ht.Add("addtime", DateTime.Now);
add("table",ht);
输出DateTime.Now是正常,存进去的时候时间就会超前,最近一次加上12个小时,以前好象还有比系统时间超前几个小时的情况,有朋友知道这个是怎么回事吗?
--------------------编程问答-------------------- 如果分钟没差的话,多半是时区设置的问题。
补充:.NET技术 , ASP.NET