【问题标题】:Oracle Stored Procedures in SubSonic 2.2SubSonic 2.2 中的 Oracle 存储过程
【发布时间】:2009-07-11 00:32:00
【问题描述】:

我仍然没有在 SubSonic 2.2 中针对 Oracle 10g DB 生成我的 SP。表格和视图完美生成。此外,该产品是多平台的,因此我们正在针对 SQL 2K5 生成 SubSonic 库,并且非常适用于表/视图 SP。

我记得在旧论坛上,早期版本的 Provider 有一个错误,所以我不确定这是否仍然是同一个问题,或者我做错了什么?在 Oracle 上调用提供程序时,SubStage(UI)也会阻塞(SQL 没有问题)。所以我认为 SP 中有些东西正在扼杀它[?]

谢谢!真正接近从我们目前的本土 DAL 迁移到 SS。

【问题讨论】:

    标签: oracle stored-procedures subsonic


    【解决方案1】:

    我能够在 2.1 版本中修复 SubSonic 中的 Oracle Provider 的许多问题,并且我的大部分修复都进入了 2.2。我没有修复 Oracle Provider 的 SP 生成部分,因为我只有一两个 SP。即使 SP 生成不起作用,您仍然可以将 SP 与 Oracle 提供程序一起使用。我只是手动将 SP(见下文)作为部分类添加到更改后的文件夹中,用于向 SubSonic 生成的类添加功能。

    例子

        public partial class SPs
    {
        public static decimal CreateSp(string username, string labelNote)
        {
            Decimal returnId = 0;
            SubSonic.StoredProcedure sp = new StoredProcedure("User.MySP");
            sp.Command.Parameters.Add("username", username, DbType.String);
            sp.Command.Parameters.Add("labelnote", labelNote, DbType.String);
            sp.Command.Parameters.Add("returnId", returnId, DbType.Decimal, ParameterDirection.Output);
            sp.Execute();
            return Convert.ToDecimal(sp.Command.Parameters.Find(delegate(QueryParameter qp) { return qp.ParameterName == "returnId"; }).ParameterValue);
        }
    

    }

    【讨论】:

    • 是的,我尝试了一个更简单的测试,使用单个(未打包的)proc,我得到了同样的结果(没有通过 substage 调用,SPs.cs 文件中没有任何内容)。非常感谢上述内容 - 我认为我的 SP 将仅限于一些具有大量事务处理的复杂项目,因此生成我自己的一些包装器可能不是什么大不了的事。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-03
    • 2011-12-29
    相关资源
    最近更新 更多