C#Linq中的日期格式

时间:2015-09-05 06:29:27

标签: c# entity-framework linq

我想使用Linq To Entities将日期格式转换为5/Sep/2015 11:53 AM。请参阅下面的代码。

public string DeliveryRequiredOn { get; set; }

var _orderdetails =
(
    from o in context.orders
    where o.StoreId == _storeId
        && o.CustomerId == _customerId
        && excludeStatusId.Contains(o.OrderStatusId.Value)
    select new OrderView()
    {
        OrderId = o.OrderId,
        StoreId = o.StoreId,
        DeliveryRequiredOn = o.DeliveryRequiredOn.ToString("dd/MM/yyyy HH:mm:ss"),
        BaseTotal = o.BaseTotal,
    }
).ToList();

如何使用Linq执行此操作。

3 个答案:

答案 0 :(得分:1)

我相信

"dd/MMM/yyyy hh:mm tt"

将是您需要的格式。

但是,根据this,DateTime.ToString(string)未映射到规范SQL函数。尽管如此,EF仍然可以引入数据库值并在本地计算格式化值,我现在无法测试。你将不得不试一试,看看它是怎么回事。

答案 1 :(得分:0)

尝试替换您的格式:

DeliveryRequiredOn = o.DeliveryRequiredOn.Value.ToString("dd/MMM/yyyy hh:mm tt");

我假设您的问题意味着,如何将字符串DeliveryRequiredOn设置为格式化的日期字符串,其中使用简短描述而不是数字显示月份。

答案 2 :(得分:0)

试试吧

{{1}}

希望它对你有所帮助。感谢