Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net C#Mysql使用存储过程从数据库中获取数据_C#_Asp.net_C# 4.0 - Fatal编程技术网

Asp.net C#Mysql使用存储过程从数据库中获取数据

Asp.net C#Mysql使用存储过程从数据库中获取数据,c#,asp.net,c#-4.0,C#,Asp.net,C# 4.0,我正在尝试使用C#中的存储过程从MySQL数据库中获取数据,更准确地说,我遵循三层体系结构,我不确定以下代码中的错误在哪里,我尝试了所有的可能性,非常感谢您的小帮助 数据服务层 public DataSet FetchLoginDetails(string SchoolID) { object[] objparam = new object[1]; objparam[0] = new MySqlParameter {

我正在尝试使用C#中的存储过程从MySQL数据库中获取数据,更准确地说,我遵循三层体系结构,我不确定以下代码中的错误在哪里,我尝试了所有的可能性,非常感谢您的小帮助

数据服务层

    public DataSet FetchLoginDetails(string SchoolID)
    {
        object[] objparam = new object[1];
        objparam[0] = new MySqlParameter
        {
            ParameterName = "@SchoolID",
            DbType = System.Data.DbType.String,
            Value =SchoolID
        };

        DataSet dsdataRes = ExecuteQuery("Storeprociduer", objparam);
        return dsdataRes;

    }
商业服务

    private ITimeTableRepository ObjTimeTable
    {
        get { return UnityManager.Resolve<ITimeTableRepository>(); }
    }
    public DataSet FetchLoginDetails(string SchoolID)
    {
        return ObjTimeTable.FetchLoginDetails(SchoolID);
    }
用户界面.cs

public void LoadLoginDetails(DataSet ds)
    {
        if (ds.Tables.Count > 0)
        {
            if (ds.Tables[0].Rows.Count > 0)
            {
                ddlSubject.Items.Clear();

                ListItem item1 = new ListItem();
                item1.Text = "Choose a Subject";
                item1.Value = "-1";
                ddlSubject.Items.Add(item1);
                for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                {

                    ListItem item = new ListItem();
             item.Text = ds.Tables[0].Rows[i]["UserName"].ToString();
           item.Value = ds.Tables[0].Rows[i]["UserName"].ToString();
                    ddlSubject.Items.Add(item);
                }
            }

如果不查看代码的其他细节,我假设您无法从MySQL数据库连接和检索数据。看看MySqlCommand对象。还有一些代码示例:

试着这样做:

    using (MySqlConnection con = new MySqlConnection(yourConnectionString))
    {
        using (MySqlCommand cmd = new MySqlCommand("Storeprociduer", con))
        {
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.AddWithValue("@SchoolID", SchoolID);
            using (MySqlDataAdapter sda = new MySqlDataAdapter(cmd))
            {
                DataTable dt = new DataTable();
                sda.Fill(dt);
                // Do something with results
            }
        }
    }
请参见此问题:


您尚未指定在FetchLoginDetails中调用哪个存储过程。@Drew很抱歉,这是我在代码中发布时的错误我提到了存储过程名称,但它仍然没有显示出来Drew感谢您的支持如果您没有问题,我可以通过Team viewer共享我的屏幕您可以查看更精确的内容HiShaik,我已经添加了一个示例,可以帮助您开始学习。如果您的问题得到解决,请接受答案。
                        <asp:DropDownList ID="ddlSubject" runat="server" Width="150px" 

Height="27px" ClientIDMode="Static"
                            AutoPostBack="true" >
                            <asp:ListItem Value="-1" Text="Choose a Subject"></asp:ListItem>
                        </asp:DropDownList>
CREATE DEFINER=`root`@`localhost` PROCEDURE `Storeprociduer`(
SchoolID 

VARCHAR(255)
)
BEGIN

select UserName from scoolage_login where SchoolID = 

SchoolID ;


END
    using (MySqlConnection con = new MySqlConnection(yourConnectionString))
    {
        using (MySqlCommand cmd = new MySqlCommand("Storeprociduer", con))
        {
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.AddWithValue("@SchoolID", SchoolID);
            using (MySqlDataAdapter sda = new MySqlDataAdapter(cmd))
            {
                DataTable dt = new DataTable();
                sda.Fill(dt);
                // Do something with results
            }
        }
    }