zoukankan      html  css  js  c++  java
  • 求解:此OracleParameterCollection 的 Count=4 的索引 4 无效 NHibernate

    概述:

         当用Nhibernate操作主从表时,往主表插入数据时,当执行到提交事务时出现如下错误:

    此 OracleParameterCollection 的 Count=4 的索引 4 无效。

    在 System.Data.OracleClient.OracleParameterCollection.RangeCheck(Int32 index) 在 System.Data.OracleClient.OracleParameterCollection.GetParameter(Int32 index) 在 System.Data.Common.DbParameterCollection.System.Collections.IList.get_Item(Int32 index) 在 NHibernate.Type.DecimalType.Set(IDbCommand st, Object value, Int32 index) 在 NHibernate.Type.NullableType.NullSafeSet(IDbCommand cmd, Object value, Int32 index) 在 NHibernate.Type.NullableType.NullSafeSet(IDbCommand st, Object value, Int32 index, ISessionImplementor session) 在 NHibernate.Persister.Entity.AbstractEntityPersister.Dehydrate(Object id, Object[] fields, Object rowId, Boolean[] includeProperty, Boolean[][] includeColumns, Int32 table, IDbCommand statement, ISessionImplementor session, Int32 index) 在 NHibernate.Persister.Entity.AbstractEntityPersister.Insert(Object id, Object[] fields, Boolean[] notNull, Int32 j, SqlCommandInfo sql, Object obj, ISessionImplementor session) 在 NHibernate.Persister.Entity.AbstractEntityPersister.Insert(Object id, Object[] fields, Object obj, ISessionImplementor session) 在 NHibernate.Action.EntityInsertAction.Execute() 在 NHibernate.Engine.ActionQueue.Execute(IExecutable executable) 在 NHibernate.Engine.ActionQueue.ExecuteActions(IList list) 在 NHibernate.Engine.ActionQueue.ExecuteActions() 在 NHibernate.Event.Default.AbstractFlushingEventListener.PerformExecutions(IEventSource session) 在 NHibernate.Event.Default.DefaultFlushEventListener.OnFlush(FlushEvent event) 在 NHibernate.Impl.SessionImpl.Flush() 在 NHibernate.Transaction.AdoTransaction.Commit() 在 DataAccess.DictateDao.AddRecord(String registerOrgid, String registerOperatorid, String dictateTitle, String dictateContent, String dictateType, String[] informOrgid, String[] accessoryName, String[] accessorySize) 位置 D:\OA\DataAccess\DataAccess\DictateDao.cs:行号 64

    主表xml如下:

    Code

      相应的CS如下:

    Code

    从表xml如下:

    Code

    相应的CS如下:

    Code

    主程序如下:

    Code

     

    当执行到trans.Commit()时出现如上所述错误.

  • 相关阅读:
    rpm常见命令使用说明
    终端传值给Makefile、Makefile传值给C++代码
    redis实现异步队列
    redis实现分布式锁
    正则表达式
    nginx安装
    metaq
    zeromq
    ActiveMq
    http压力测试
  • 原文地址:https://www.cnblogs.com/abcdwxc/p/1427403.html
Copyright © 2011-2022 走看看