从LocalTime转换为TimeSpan

问题描述 投票:0回答:1

我在我的应用程序中使用NodaTime和Entity Framework Core。我正在使用AutoMapper将我的模型(使用LocalTime)转换为实体(使用Timespan,后者映射到Sql Server中的Time)。我这样做是为了避免EF ValueConversions的陷阱。

[从实体到模型(即从Timespan到L​​ocalTime)时,我发现了这样做的“官方”方式(https://github.com/nodatime/nodatime/issues/148:]]

LocalTime.FromTicksSinceMidnight(timespan.Ticks)

但是,从模型到实体(从LocalTime到Timespan),我不确定最好的方法是什么。日期和时间似乎太棘手,无法仅获取小时,分钟等信息,例如:

new TimeSpan(localTime.Hour, localTime.Minute, localTime.Second, localTime.Second, localTime.Millisecond)

我应该像从本地时间到Timespan时那样使用刻度吗?

TimeSpan.FromTicks(localTime.TickOfSecond)

我在我的应用程序中使用NodaTime和Entity Framework Core。我正在使用AutoMapper从我的模型(使用LocalTime)转换为我的实体(使用Timespan,后者映射到...中的时间)

sql-server automapper nodatime localtime entity-framework-core-3.1
1个回答
0
投票

[从LocalTime转换为TimeSpan,您确实可以使用刻度线-但您想要TickOfDay

© www.soinside.com 2019 - 2024. All rights reserved.