c# - 如何将 Datetime.utcnow 转换为 DateTime,UTCtoLocal()?
问题描述
当转换utcnow
为当地时间时,它会显示如下错误
“LINQ to Entities 无法识别 'System.DateTime ToLocalTime()' 方法,并且此方法无法转换为存储表达式。”
我使用的是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);
来源:日期时间字符串与时区
推荐阅读
- visual-studio-code - 如何在 VSCode 中检索活动的 CustomTextEditor
- java - 使用 mockito 和 Junit5 使用参数模拟静态 void 方法
- qt - 需要有关 font.pointSize 和 font.pixelSize 的帮助
- javascript - Firebase 使用 1 个参数调用。预计没有
- excel - 处理前重新格式化 Excel 文档
- mysql - 仅将 MySQL uniq 行增加一个请求
- visual-studio-code - 如何打开这个“控制台”在 VS Code 中安装包?
- security - 如果使用 SSL,是否有必要对 POST 的数据进行哈希处理?
- php - 如何在 PHP 中使用 simple_html_dom 查找视频源 url
- powershell - PowerShell 枚举评估