我想将我的代码优先项目更改为SQL Server Compact 4.0。
但是我遇到了LINQ表达式
的问题db.Test.OrderBy(t => t.Name)
.ThenBy(t => t.DayOfWeek)
.ThenBy(t => DbFunctions.CreateTime(t.TimeFrom.Hour, t.TimeFrom.Minute, t.TimeFrom.Second))
它会抛出以下错误
SQL Server Compact
不支持“CreateTime”功能
有没有办法在不使用CreateTime
方法的情况下编写该表达式?
答案 0 :(得分:0)
我在Sql Server Compact中使用代码优先。在我的模型中,我有一个名为TimeStamp的属性,类型为DateTime。那时我可以这样做:
db.Test.OrderBy(t => t.Name)
.ThenBy(t => t.TimeStamp.DayOfWeek)
.ThenBy(t => t.TimeStamp.Hour)
.ThenBy(t => t.TimeStamp.Minute)
.ThenBy(t => t.TimeStamp.Second)
.ThenBy(t => t.TimeStamp.Millisecond);
或
db.Test.OrderBy(t => t.Name)
.ThenBy(t => t.TimeStamp.Ticks);