Fluent NHibernate(1.3.0.727)の最新のNuGetパッケージを使用していますが、NHibernate 3.2で修正されていると思われる問題が発生しています最新のFluentではNHib 3.3を使用しています)。データベースはAzureのSQL Server 2008です。データ型timeとdatetimeがより大きい演算子で互換性がありません
私は、SQL 時間フィールドで.NET のTimeSpanを比較するクエリを実行すると、それは次の例外がスローされます。
データ型の時間と日時がオペレータよりも大きいに互換性がありません。
ここでサンプルクエリです:
TimeSpan ts = new TimeSpan(1, 0, 0);
List<Message> messages = messageRepo.FilterBy(m => m.SendTime > ts).ToList();
ここに私のMessageクラスの抜粋です:
public class Message
{
public virtual int Id { get; set; }
[DataType(DataType.Time)]
public virtual TimeSpan? SendTime { get; set; }}
}
そしてここでは、関連するマッピングの詳細です:
public class MessageMap : ClassMap<Message>
{
public MessageMap()
{
Table("Message");
LazyLoad();
Id(x => x.Id).GeneratedBy.Identity().Column("MessageID");
Map(x => x.SendTime).Column("SendTime").CustomType("TimeAsTimeSpan");
}
}
私はすべて検索しました私が見つけたり考えたりすることができるすべてを試しました。たぶん私はただの何かを見逃しているだけでしょうか?助けてくれてありがとう。
優秀!できます! Thxブランドン... –