[英]Problems Fluent Nhibernate Mapping MySQL Time(6) to C# DateTime
i have a MySql table with the following schema 我有一个MySql表与以下架构
Field Type Null Key Default Extra
id int(11) NO PRI NULL auto_increment
Date date YES MUL NULL
Time time(6) NO MUL NULL
Exch varchar(45) YES MUL NULL
ProdType varchar(45) YES NULL
Product varchar(45) YES NULL
Contract varchar(45) YES NULL
Direction varchar(45) YES NULL
Price decimal(10,4) YES NULL
Quantity int(11) YES NULL
Fluent Model: 流利的模型:
public class Trade
{
public virtual int Id { get; set; }
public virtual DateTime Date { get; set; }
public virtual DateTime Time { get; set; }
public virtual string Contract { get; set; }
public virtual string Direction { get; set; }
public virtual double Price { get; set; }
public virtual int Quantity { get; set; }
}
and mapping: 和映射:
public TradeMap()
{
Id(x => x.Id).Column("id");
Map(x => x.Date).Column("Date");
Map(x => x.Time).Column("Time").CustomType("timestamp");;
Map(x => x.Contract).Column("Contract");
Map(x => x.Direction).Column("Direction");
Map(x => x.Price).Column("Price");
Map(x => x.Quantity).Column("Quantity");
Table("ts");
}
I'm testing the ORM with the following code 我正在使用以下代码测试ORM
DateTime dayStart = Convert.ToDateTime("11:31:00.000000");
DateTime dayEnd = Convert.ToDateTime("11:32:00.000000");
IQueryable<Trade> result = from ts in repo.GetList<Trade>()
where ts.Date == new DateTime(2013,7,1)
&& ts.Time >= dayStart
&& ts.Time <= dayEnd
&& ts.Contract == "Sep13"
select ts;
foreach (var l in result)
{
DateTime k = l.Time;
}
and 和
Trade result = repo.GetList<Trade>().FirstOrDefault();
But i keep getting inner exception 但我一直在内心异常
{"Unable to cast object of type 'System.TimeSpan' to type 'System.IConvertible'."}
i tried resolving this by changing the time mapping to 我试着通过改变时间映射来解决这个问题
Map(x => x.Time).Column("tsTime").CustomType("timestamp").CustomSqlType("TIME(6)").Nullable();
Map(x => x.Time).Column("tsTime").CustomSqlType("TIME(6)"); Map(x => x.Time).Column(“tsTime”)。CustomSqlType(“TIME(6)”);
but nothing works 但没有任何作用
DATE + TIME使用单个字段。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.