码迷,mamicode.com
首页 > 其他好文 > 详细

提高系统性能和安全性

时间:2017-01-07 22:35:25      阅读:228      评论:0      收藏:0      [点我收藏+]

标签:使用   dir   输出   class   调用   ble   参数化   数据库   procedure   

using

    定义:using可以用于导入命名空间,也可以释放对象占用的内存资源。

    语法:

using(SqlConnection conn = new SqlConnection(connString))
{
        //数据库操作代码
}

    using语句允许用户定义一个范围,并且总是在范围末尾处释放对象。

    即使using范围内出现异常也会释放对象。

    注意事项:

        1.using可以主动释放的对象都需要事项IDisable接口。

        2.并不是所有的代码需要使用using,只需要对那些对系统性能有重要影响的对象使用using即可。

 

参数化命令

    参数化命令可以有效的防止sql注入。

    语法:

StringBuilder sb = new StringBuilder();
sb.AppendLine("indert....");
sb.AppendLine("values");
sb.AppendLine("@参数1,...");
SqlParameter[] para = {
    new SqlParameter("参数1",值),
    ...
}
SqlCommand cmd = new SqlCommand(sb.ToString(), conn);

cmd.Parmeters.AddRange(para);
...

 

用ADO.NET调用存储过程

    只需要设置一下command对象的命令类型即可。

    语法:

SqlCommand cmd = new SqlCommand("存储过程名称", conn);

//设置命令类型
cmd.CommandType = CommandType.StoredProcedure;

//添加输入参数
SqlParameter[] para = {
    new SqlParameter("参数1",值),
    ...
}
cmd.Parmeters.AddRange(para);
...

    使用输出参数的语法:

SqlCommand cmd = new SqlCommand("存储过程名称", conn);

//设置命令类型
cmd.CommandType = CommandType.StoredProcedure;

//添加输入参数
SqlParameter[] para = {
    new SqlParameter("参数1",值),
    ...
}

//设置最后一个参数为输出参数
para[para.Length - 1].Direction = ParameterDirection.Output;
cmd.Parmeters.AddRange(para);
...

//使用输出参数
string ret = Convert.ToString(para[para.Length - 1].Value);

 

提高系统性能和安全性

标签:使用   dir   输出   class   调用   ble   参数化   数据库   procedure   

原文地址:http://www.cnblogs.com/gaofei-1/p/6260356.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!