var oList = from oCI in db.clients
where oCI.ClientRef == 20
select new
{
id = oCI.id,
dateReceived = oCI.dateReceived,
};
访问dateReceived时,我得到的值为
/Date(1342479600000)/
而不是
2012-07-17 00:00:00.000
存储在数据库中
任何人都可以帮忙吗?
班级
public partial class client
{
public int id { get; set; }
public long ClientRef { get; set; }
public DateTime dateReceived { get; set; }
}
答案 0 :(得分:1)
请尝试使用oCI.dateReceived.Value.Date。
答案 1 :(得分:0)
以下内容可能有所帮助:
oCI.dateReceived.ToLongDateString()
System.DateTime方法(LINQ to SQL) http://msdn.microsoft.com/en-us/library/vstudio/bb882657(v=vs.100).aspx http://msdn.microsoft.com/en-us/library/vstudio/system.datetime.tolongtimestring(v=vs.100).aspx
答案 2 :(得分:0)
您的问题不是从数据库获取日期,您的问题就是如何观看结果。
将日期序列化为json字符串时,获取下一个字符串
/Date(1342479600000)/
正确的序列化日期。从这个Date对象获取,你可以使用像这样的正则表达式
var serializedDate = "/Date(1342479600000)/";
var date = new Date(parseInt(serializedDate.match(/Date\((\d+)\)/)[1],10));
注意:我认为更好的是在调试器中观察值,或者发送日期的客户端字符串表示,或者可能是unixtimestamp。
答案 3 :(得分:0)
var oList = (from oCI in db.clients
where oCI.ClientRef == 20
select new
{
id = oCI.id,
dateReceived = oCI.dateReceived,
}).ToList().Select(o => new
{
id = o.id,
status = o.dateReceived.ToString()
});
上面的返回日期为字符串,它有效!!!