尝试使用Insert CLass执行插入注释时,我得到以下异常:
将char数据类型转换为datetime数据类型会导致日期时间值超出范围。
我正在使用以下全球化设置:
<globalization uiCulture="en-AU" culture="en-AU"/>
我的日期格式为:“dd / mm / YYYY”
我可以使用以下方法解决异常:
ci.Date.HasValue?ci.Date.Value.ToString("yyyy-MM-dd HH:mm:ss"):null
但这很难看,因为......我能做些什么让亚音速选择我的全球化设置?
由于
路易斯
答案 0 :(得分:0)
您使用的是SQLServer 2008“日期”列吗?
我在这种情况下遇到了同样的问题,在我的情况下,因为SQL Server“Date”类型的Subsonic类属性被设置为“String”。
请参阅Subsonic 2.2 Generated Property for SQL Server 2008 Date
如果你能证实这一点,我会很感激,并且我会向Subsonic项目问题列表发布一个问题。
答案 1 :(得分:0)
Luis你应该发布一些代码,以便我们可以看到你想要做的事情,但我想我知道这个问题。
如果传入Subsonic无法识别的数据类型,例如DateTime?(而不是Date),则subsonic将调用对象的ToString()方法并将其DataType设置为字符串,这将导致问题你在上面提到您应该只需传递ci.Date.Value而无需调用自己的ToString(“format”)方法。