字节?不适用于iBatis parameterMap中的参数类型

时间:2010-12-31 15:40:57

标签: configuration ibatis ibatis.net

根据the iBatis docs,使用“byte?”作为类型值应该在parameterMap中起作用。我正在使用DataMapper版本1.6.1。

我收到的错误消息是:无法从字符串值'byte?'加载类型。

这是一个配置异常,它在堆栈跟踪中显示了这些信息:

  

加载时发生错误   的SqlMap。

     
      
  • 检查参数映射typeHandler属性''(必须是a   ITypeHandlerCallback实现)。
  •   
  • [sqlMap embedded =“MyApp.Data.Config.Rate.xml,MyApp”Mxmlns =“http://ibatis.apache.org/dataMapper”]
  • 发生错误   
  • 检查Rate.InsertParams。]
  •   

这是Rate.InsertParams的XML块:

<parameterMaps>
<parameterMap id="InsertParams" class="RateCategory">
  <parameter property="RateId" column="RateId" type="int"/>
  <parameter property="Name" column="Name" type="string" size="32"/>
  <parameter property="Charge" column="Charge" type="decimal?"/>
  <parameter property="ChargeTypeId" column="ChargeTypeId" type="byte?"/>
</parameterMap>

为什么它不起作用的任何想法?

2 个答案:

答案 0 :(得分:0)

据我所知,没有任何“字节”?别名。 Here is a proof

您还可以找出确定支持的内容以及此文件中的内容。

“代码从不谎言。”文档确实:(

答案 1 :(得分:0)

经过大量的询问和发帖后,最终的答案是文档错误。

The official iBatis.Net forum had this to say

“你有几个选择:

  1. 只需使用type =“byte”
  2. 不指定类型
  3. 字节?语法糖System.Nullable`1 [[System.Byte]]“
  4. 这基本上是我自己已经想到的。诠释?工作但字节?没有。简短也没有?还是长的?。

    需要修复文档。