我在使用存储过程将数据从我的 sql-server 数据库返回到 aspx 页面时遇到问题,希望有人能指出我哪里出错了。
当我运行项目时,数据成功输入到表中,但在以下页面(Confirm.aspx)没有返回任何内容
Confirm.aspx.cs
using Devworks;
namespace OSQARv0._1
{
public partial class Confirm_Questionnaire : System.Web.UI.Page
{
OscarSQL b;
protected void Page_Load(object sender, EventArgs e)
{
b = new OscarSQL();
string qstname = b.GetQuestionName();
ReturnQstID.Text = qstname;
}// End Page_Load
} // Emd Class Confirm_Questionnaire
} // End Namespace
SQL.cs(应用代码)
public OscarSQL()
{
_productConn = new SqlConnection();
_productConnectionString += "data source=mssql.database.co.uk; Initial Catalog=devworks_oscar;User ID=username;Password=password";
_productConn.ConnectionString = _productConnectionString;
}
public string GetQuestionName()
{
SqlCommand myCommand = new SqlCommand("GetQuestion", _productConn);
myCommand.CommandType = CommandType.StoredProcedure;
SqlParameter retval = myCommand.Parameters.Add("@QUESTTEXT", SqlDbType.VarChar);
retval.Direction = ParameterDirection.Output;
_productConn.Open();
string returnvalue = (string)myCommand.Parameters["@QUESTTEXT"].Value;
_productConn.Close();
return returnvalue;
}
存储过程
USE [devworks_oscar]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [hgomez].[GetQuestion]
AS
/*SET NOCOUNT ON;*/
SELECT QuestionText FROM [Questions] WHERE QuestionnaireID = 21
RETURN
如有任何帮助,我们将不胜感激。
最佳答案
您没有执行该过程。您正在设置它,但没有返回它。
string returnvalue = (string)myCommand.ExecuteScalar();
关于c# - 使用存储过程从 SQL Server 返回数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8070333/