数据版本SQL SERVER 2008 R2
B/S项目
现在表有一列为时间戳列,比如值为:0x00000000000007E1,
C#代码执行查询SQL查询语句返回DataTable对象,再使用Newtonsoft.Json.JsonConvert.SerializeObject序列化为JSON字符串输出到前台客户端,值变成字符串:AAAAAAAAB+E=
现在将“AAAAAAAAB+E=”传回存储过程中,判断判断原纪录是否已被修改。需要将AAAAAAAAB+E= 转换为TIMESTAMP才能比较。
请问如果将VARCHAR类型转换为TIMESTAMP类型。
求大神指导。跪谢谢!!
------解决思路----------------------
public static string ToJsonProcess<T>(int Code, string msg, string action, IList<T> list)
{
try
{
String json = "";
IsoDateTimeConverter timeConverter = new IsoDateTimeConverter();
timeConverter.DateTimeFormat = "yyyy-MM-dd";//设置时间格式
json = JsonConvert.SerializeObject(list, Formatting.None, timeConverter);
}
catch (Exception ex)
{
}
}
------解决思路----------------------
你还是应该把时间戳值转化为 JSON 字符串 '0x00000000000007E1';然后C#调用存储过程时,可以直接拼到 SQL 中
String ts = json.时间戳字符串;
String sql = "mysp "+ts;
------解决思路----------------------
既然有Newtonsoft.Json.JsonConvert.SerializeObject方法序列化为json串,那么肯定也有相应的方法反序列化为字符串把。
而且我觉得,可以直接把 0x00000000000007E1做为一个字符串,就这样不用再次转换了