如何将Datetime.utcnow转换为Datetime,UTCtoLocal()



utcnow转换为本地时间时,会显示类似的错误

"LINQ to Entities无法识别方法"System.DateTimeToLocalTime((方法,而此方法无法转换为存储表达式。">

我使用的是SQL Server 2014,而不是mango db。当我在查询之外使用函数UTCtoLocal时,它将起作用。但是我需要在linq查询中使用它来加快执行速度。还有其他方法可以做到这一点。

group new
{
Id = ord.Id,
ShipmentInfoId = shipment.Id,
PartnerName = partner.Name,
PartNumber = ordItem.SellerProductID,
OrderNumber = ord.UniqueOrderID,
PartCount = shipment.PartCount,
DeliveryDate = ord.DeliveryDate,
IsSentInvoice = shipment.IsSentInvoice != null ? shipment.IsSentInvoice : false,
IsSentASN = shipment.IsSentASN != null ? shipment.IsSentASN : false,
ShippingPartCount = 0,
IsManualEntered = ord.IsManualEntered,
LastGeneratedInvoiceDate = shipment.LastGeneratedInvoiceDate.Value.UtcToLocal(),
LastGeneratedASNDate = shipment.LastGeneratedASNDate.Value.UtcToLocal(),

使用DateTimeKind解决方案。Utc和ToLocalTime((

var dt = new DateTime(2010, 1, 1, 1, 1, 1, DateTimeKind.Utc);
string s = dt.ToLocalTime().ToString("yyyy-MM-dd HH:mm:ss "GMT"zzz");
Console.WriteLine(s);

来源:带时区的字符串的日期时间

最新更新