public static object Proc(string ProcName, SqlParameter[] parm)
{
conn.Open();
       //最后一个参数为输出参数
parm[parm.Length - ].Direction = ParameterDirection.Output;
using (SqlCommand cmd = new SqlCommand(ProcName,conn))
{
cmd.CommandType = CommandType.StoredProcedure;
if (parm != null)
{
cmd.Parameters.AddRange(parm);
} int result = cmd.ExecuteNonQuery();
}
conn.Close();
       //返回输出的参数,看存储过程中定义的输出参数是什么类型,这里就转换成什么类型
return (bool)parm[parm.Length - ].Value;
}

以上为sqlhelper里面使用存储过程的方法.

如果调用呢?

     public object ZiJian(int uid,int cid,int jid)
{
SqlParameter[] parameter = {
new SqlParameter("@uid",SqlDbType.Int),
new SqlParameter("@cid",SqlDbType.Int),
new SqlParameter("@jid",SqlDbType.Int),
new SqlParameter("@result",SqlDbType.Bit)
};
parameter[].Value = uid;
parameter[].Value = cid;
parameter[].Value = jid;
parameter[].Direction = ParameterDirection.Output;
return SqlHelper.Proc($"Proc_Zijian",parameter);
}

因为存储过程中的参数不固定,所以在这里把使用存储过程的参数组成一个集合,最后一个为输出参数,所以不需要赋值,但是需要指出他是输出参数.parameter[3].Direction = ParameterDirection.Output;

sqlhelper写调用存储过程方法的更多相关文章

  1. ASP.NET中调用存储过程方法

    两种不同的存储过程调用方法 为了突出新方法的优点,首先介绍一下在.NET中调用存储过程的“官方”方法.另外,本文的所有示例程序均工作于SqlServer数据库上,其它情况类似,以后不再一一说明.本文所 ...

  2. LPAD在Oracle中和 mssql以及在MySQL中的不同用法 以及调用存储过程方法

    Oracle: ,') from dual ,,') from dual 效果: Mssql: )+ltrim(tt.number_no) from Tabletest as tt 效果: MySQL ...

  3. C#:调用存储过程方法

    MySqlParameter p1 = new MySqlParameter("id", MySqlDbType.Int32); p1.Value = sid; MySqlPara ...

  4. .net 调用存储过程

    语言:C# 一.调用带输入参数的存储过程 首先自然是在查询分析器里创建一个存储过程喽~~   如下所示: create proc proc_1 @uid int, @pwd varchar(255) ...

  5. 关于用mybatis调用存储过程时的入参和出参的传递方法

    一.问题描述 a)         目前调用读的存储过程的接口定义一般是:void  ReadDatalogs(Map<String,Object> map);,入参和出参都在这个map里 ...

  6. 第四节: EF调用存储过程的通用写法和DBFirst模式子类调用的特有写法

    一. 背景 上一个章节,介绍了EF调用两类SQL语句,主要是借助 ExecuteSqlCommand  和 SqlQuery 两个方法来完成,在本章节主要是复习几类存储过程的写法和对应的EF调用这几类 ...

  7. ASP.NET MVC深入浅出(被替换) 第一节: 结合EF的本地缓存属性来介绍【EF增删改操作】的几种形式 第三节: EF调用普通SQL语句的两类封装(ExecuteSqlCommand和SqlQuery ) 第四节: EF调用存储过程的通用写法和DBFirst模式子类调用的特有写法 第六节: EF高级属性(二) 之延迟加载、立即加载、显示加载(含导航属性) 第十节: EF的三种追踪

    ASP.NET MVC深入浅出(被替换)   一. 谈情怀-ASP.NET体系 从事.Net开发以来,最先接触的Web开发框架是Asp.Net WebForm,该框架高度封装,为了隐藏Http的无状态 ...

  8. entity framework core 调用存储过程和方法

    目前EF Core调用存储过程,限制很多,比如返回结果必须是定义好的DbSet<>等等.这里用一种曲线救国的方式,自定义两个方法,用原始ado.net解决问题.以MySql数据库为例,代码 ...

  9. 在易语言中调用MS SQL SERVER数据库存储过程方法总结

    Microsoft SQL SERVER 数据库存储过程,根据其输入输出数据,笼统的可以分为以下几种情况或其组合:无输入,有一个或多个输入参数,无输出,直接返回(return)一个值,通过output ...

随机推荐

  1. 第2章 Linux操作系统简介

    1. Linux操作系统的构成 (1)内核(kernel) ①操作系统的核心,负责管理系统的进程.内存.设备驱动程序.文件和网络系统. ②控制系统和硬件之间的相互通信. ③决定着系统的性能和稳定性. ...

  2. Git同时提交到多个远程仓库

    使用git同时提交到多个远程库的操作方式为: 比如我需要你将同一份代码提交到如下的两个库中: https://gitee.com/FelixBinCloud/recruit.git https://g ...

  3. 679. 24 Game

    ▶ 给出四个整数,求他们是否能加减乘除括号拼凑成 24 ● 代码,11 ms,正向枚举,推广性很强(nums 可以改为任意长度,也不限于拼凑 24 这个和),缺点是只能判定是否有解,不方便输出不重复的 ...

  4. Tessnet2 a .NET 2.0 Open Source OCR assembly using Tesseract engine

    http://www.pixel-technology.com/freeware/tessnet2/ Tessnet2 a .NET 2.0 Open Source OCR assembly usin ...

  5. myeclipse通过数据表生成jpa或hibernate实体

    1. 创建数据库连接 2. 选择表 3. 生成 hibernate mapping 4. 生产jpa

  6. mysql 搜索字段不包含数字

    select a.REG_CN_NAME,a.REG_NUM,a.INT_CLS from T_FENFA_43_TM_HOLDERINFO a where a.REG_CN_NAME  NOT RE ...

  7. 307. Range Sum Query - Mutable查询求和的范围(可变)

    [抄题]: Given an integer array nums, find the sum of the elements between indices i and j (i ≤ j), inc ...

  8. [leetcode]121. Best Time to Buy and Sell Stock 最佳炒股时机

    Say you have an array for which the ith element is the price of a given stock on day i. If you were ...

  9. SpringMVC学习总结(一)--Hello World入门

    一.什么是Spring MVC Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面.Spring 框架提供了构建 Web 应用程序的全功能 ...

  10. MVC页面和表单

    @Styles.Render("~/Content/css")//在head中引用css @Scripts.Render("~/bundles/modernizr&quo ...