IBatisNet动态update以及DateTime类型字段处理

在维护一个老项目中碰到的问题。SQL配置如下(只简单列出两个字段):

<update id="ProjectInfo.Update" parameterClass="ProjectInfo">
    update ProjectInfo
    <dynamic prepend="set">
        <isNotEmpty prepend="," property="ProName">proName=#ProName#</isNotEmpty>
        <isNotEqual prepend="," property="ApproveDate" compareValue="0001-1-1 0:00:00">approveDate=#ApproveDate#</isNotEqual>
    </dynamic>
    where ID = #ID#
</update>

其中 ApproveDate为DateTime类型,可能是IBatisNet版本的原因实体定义成DateTime?发现不支持。

最后发现使用isNotEqual排除DateTime默认值,问题解决。

没处理前报错为“对于造型说明无效的字符值”。

posted @ 2014-02-28 20:18  志在必得Shaun  阅读(726)  评论(0编辑  收藏  举报