2017-07-10 2 views
0

DropDownlistをバインドできません。Sqldatareaderのコードがあります。 出力がありません。私はデータベースからの値を表示し、それをバインドします。ドロップダウンリストをバインドできません

try 
    { 

     SqlDataReader ds = obj.GetDataReader("Select Name, Emp_ID from 
EMP_Info where Emp_ID in ( select Emp_ID from EMP_Info where Name ='" + 
Session["AG_name"].ToString() + "' except select Emp_ID from RosterWeekly 
where WeekStartDate between '" + txtDate.Text + "' and '" + 
Convert.ToDateTime(txtDate.Text).AddDays(7).ToShortDateString() + "') Order 
By Name"); 


      txempid.DataSource = ds; 
      txempid.DataValueField = "Emp_ID"; 
      txempid.DataTextField = "Name"; 


     txempid.DataBind(); 

     txempid.Items.Insert(0, new ListItem("--Select Employee Name--", 
"0")); 
     txempid.Items.Insert(1, new ListItem(ds[0].ToString(), "1")); 


    } 
    catch (Exception ex) 
{ 

} 

// dropdownlist code 

<asp:DropDownList Height="35" Width="200" ID="txempid" runat="server" 
AutoPostBack="true" OnSelectedIndexChanged ="txempid_SelectedIndexChanged" > 
</asp:DropDownList> 
+0

なぜあなたはデータバインドをしたら項目を挿入していますか? –

+0

あなたのページにこのコードを書き込んだのはどのイベントですか? –

+0

私は単純に挿入していない、私はこのドロップダウンリストをバインドしたい.. –

答えて

0

この問題は、文字列のdatetimeパラメータに関連しているようです。私はtxtDate.Textが直接クエリに渡されるのが好きではありません。私は、実行時にこれを試してみる時間を持っていなかった

var obj = new SqlCommand("Select Name, Emp_ID from 
EMP_Info where Emp_ID in ( select Emp_ID from EMP_Info where Name ='" + 
Session["AG_name"].ToString() + "' except select Emp_ID from RosterWeekly 
where WeekStartDate between @startDate and @endDate) Order 
By Name", conn); 

var par1 = new SqlParameter(); 
par1.DbType = DbType.DateTime; 
par1.Value = DateTime.Parse(txtDate.Text); 
par1.ParameterName = "@startDate"; 

var par2 = new SqlParameter(); 
par2.DbType = DbType.DateTime; 
par2.Value = DateTime.Parse(txtDate.Text).AddDays(7); 
par2.ParameterName = "@endDate"; 

obj.Parameters.Add(par1); 
obj.Parameters.Add(par2); 

SqlDataReader ds = obj.ExecuteReader(); 

は、私はあなたのクエリでカップルのパラメータを入れて、(SqlCommandオブジェクトがある私はobj仮定)そのような強い型付けされたパラメータを渡すことをお勧め、多分何かが調整を必要とする可能性があります....

+0

提案していただきありがとうございます。しかし、問題は私がドロップダウンリストをバインドしている間に直面している問題は...バインド時に問題を確認してください。 –

+0

クエリが実際にデータバインド時に実行されるためです。 –

関連する問題