首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ASP.NET C#和存储过程

ASP.NET C#和存储过程
EN

Stack Overflow用户
提问于 2010-11-18 11:03:57
回答 3查看 3.1K关注 0票数 3

我正在从MSVS中的DataTableAdapters过渡到在MS SQL Server中创建存储过程。

这就是我到目前为止所拥有的。

代码语言:javascript
复制
protected void Submit_Click(object sender, EventArgs e)
    {
         var conString = ConfigurationManager.AppSettings["ConnectionString"].ToString(); 
         using (SqlConnection con = new SqlConnection(conString))
        {
            using (SqlCommand cmd = new SqlCommand("getAdministrators", con))
            {
                cmd.Parameters.Add("@userName", SqlDbType.VarChar).Value = userNameTB.Text;
                cmd.Parameters.Add("@password", SqlDbType.VarChar).Value = passwordTB.Text;
                cmd.CommandType = CommandType.StoredProcedure;
                using (SqlDataAdapter da = new SqlDataAdapter(cmd))
                {
                    DataSet ds = new DataSet();
                    da.Fill(ds);
                }
            }
        }
    }

我想获取所有行/列,并将它们存储在DataSet中,然后根据自己的意愿使用返回的值。要做到这一点,我错过了什么。或者如果有人有一篇文章也可以帮助你呢?

我更新了代码以使用using

我认为代码正在慢慢地到达那里...

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-11-18 12:37:23

下面的代码片段可以工作:

代码语言:javascript
复制
    public static DataSet GetAll(int id)
    {
        using (SqlConnection con = new SqlConnection(Database.ConnectionString))
        {
            using (SqlCommand cmd = new SqlCommand("sp_ContactGetAll", con))
            {
                cmd.CommandType = CommandType.StoredProcedure;
                using (SqlDataAdapter da = new SqlDataAdapter(cmd))
                {
                    DataSet dsData = new DataSet();
                    da.Fill(dsData);
                    return dsData;
                }
            }
        }
    }
票数 2
EN

Stack Overflow用户

发布于 2010-11-18 11:09:49

我可能错了,但我希望下面的方法能起作用:

代码语言:javascript
复制
using(var reader = cmd.ExecuteReader()) {
  ds.Tables[0].Load(reader);
}

(假设您想填充第0个表)

票数 0
EN

Stack Overflow用户

发布于 2010-11-18 11:33:13

http://msdn.microsoft.com/en-us/library/9kcbe65k.aspx

我猜你错过了cmd.ExecuteReader

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4211308

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档