【问题标题】:Returning an object from a stored procedure从存储过程中返回一个对象
【发布时间】:2014-09-21 18:30:53
【问题描述】:

我正在尝试创建一个存储过程,它从本地数据库读取数据并创建一个对象并返回它。我的问题是我没有使用过存储过程,所以我对此了解不多。

我知道如何使用存储过程将数据存储到数据库中,但我不知道如何通过存储过程返回数据。

下面是我创建的用于返回对象的存储过程。

CREATE PROCEDURE [dbo].[get_Advertisements]
AS
BEGIN
    Select * From  Advertisements;         
END

我知道上面的存储过程只选择记录,但我想做的是:

  1. 从广告表中一次选择一条记录
  2. 创建广告类的对象并传递从广告表中读取的值
  3. 返回对象
  4. 继续上述过程,直到读取完整的表格。

广告对象具有以下属性: - 话题 - 内容

我如何做到这一点?请帮忙,我尝试自己做,但我对返回的部分感到困惑。

感谢您的宝贵时间

【问题讨论】:

  • 为什么要Create an object of advertisement(我觉得像LINQ to SQL)?无需创建该对象,您就可以读取该表中的所有记录
  • 你能告诉我怎么做吗?这将非常有用。
  • 我发布了答案尝试一下

标签: mysql sql asp.net database stored-procedures


【解决方案1】:

试试这个:

这适用于 SQL Server 和 ASP.NET

string connetionString = null;
            SqlConnection sqlCnn ;
            SqlCommand sqlCmd ;
            SqlDataAdapter adapter = new SqlDataAdapter();
            DataTable ds = new DataTable();
            int i = 0;
            string sql = null;

            connetionString = "Data Source=ServerName;Initial Catalog=DatabaseName;User ID=UserName;Password=Password";
// this should be always in web.config file
            sql = "Select * from Advertisements";

            sqlCnn = new SqlConnection(connetionString);
            try
            {
                sqlCnn.Open();
                sqlCmd = new SqlCommand(sql, sqlCnn);
                adapter.SelectCommand = sqlCmd;
                adapter.Fill(ds);


                adapter.Dispose();
                sqlCmd.Dispose();
                sqlCnn.Close();


//in ds You will get a Table 
    foreach(DataRow row in thisTable.Rows)
        {
            foreach(DataColumn column in thisTable.Columns)
            {
               Response.write((row[column]+"</br>");
// read all values of table
            }
    }

            }
            catch (Exception ex)
            {

            }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-18
    • 1970-01-01
    • 2014-10-20
    • 2011-11-06
    相关资源
    最近更新 更多