Sql server 组合框显示System.Data.DataRow(MVC)
我的组合框不显示SQL属性“TimeBlock”中的值,而是显示System.Data.DataRow 5次。我的代码有什么问题 代码:Sql server 组合框显示System.Data.DataRow(MVC),sql-server,asp.net-mvc,combobox,datatable,three-tier,Sql Server,Asp.net Mvc,Combobox,Datatable,Three Tier,我的组合框不显示SQL属性“TimeBlock”中的值,而是显示System.Data.DataRow 5次。我的代码有什么问题 代码: //DAL: public class DAL{ string ConnectionString = "server=ICSSQL13\\Grupp28,1528; Trusted_Connection=yes; database=Yoloswag"; public DataTable StoreSqlDataInComb
//DAL:
public class DAL{
string ConnectionString = "server=ICSSQL13\\Grupp28,1528; Trusted_Connection=yes; database=Yoloswag";
public DataTable StoreSqlDataInComboBoxTP()
{
SqlConnection Conn = new SqlConnection(ConnectionString);
Conn.Open();
string StoreSqlDataInComboBoxTP = "SELECT TimeBlock FROM TimePeriod GROUP BY TimeBlock";
SqlCommand Cmd = new SqlCommand(StoreSqlDataInComboBoxTP, Conn);
SqlDataAdapter Adapter = new SqlDataAdapter(Cmd);
DataSet DSet = new DataSet();
Adapter.Fill(DSet);
Adapter.Dispose();
Cmd.Dispose();
Conn.Close();
Conn.Close();
return DSet.Tables[0];
}
}
//Controller:
public class Controller
{
DAL Dal = new DAL();
public DataTable storesqldataincomboboxtp()
{
return Dal.StoreSqlDataInComboBoxTP();
}
}
//View:
public partial class Booking : Form
{
Controller controller = new Controller();
DataTable DTable = new DataTable();
DataSet DSet = new DataSet();
//Ignore string UserName
public Booking(string UserName){
DTable = controller.storesqldataincomboboxtp();
if (DTable.Rows.Count > 0)
{
for (int i = 0; i < DTable.Rows.Count; i++)
{
CBTime.Items.Add(DTable.Rows[i].ToString());
}
}
}
}
//DAL:
公共类DAL{
string ConnectionString=“server=ICSSQL13\\grupp281528;Trusted_Connection=yes;database=Yoloswag”;
公共数据表存储sqldataincomboxtp()
{
SqlConnection Conn=新的SqlConnection(ConnectionString);
Conn.Open();
string storesqldataincomboxtp=“按时间块从时间段组中选择时间块”;
SqlCommand Cmd=新的SqlCommand(storesqldataincomboxtp,Conn);
SqlDataAdapter=新的SqlDataAdapter(Cmd);
数据集DSet=新数据集();
适配器。填充(DSet);
Adapter.Dispose();
Cmd.Dispose();
康涅狄格州关闭();
康涅狄格州关闭();
返回数据集表[0];
}
}
//控制器:
公共类控制器
{
DAL=新的DAL();
公共数据表存储sqldataincomboxtp()
{
返回Dal.storesqldataincomboxtp();
}
}
//视图:
公共部分课程预订:表格
{
控制器=新控制器();
DataTable DTable=新的DataTable();
数据集DSet=新数据集();
//忽略字符串用户名
公共预订(字符串用户名){
DTable=controller.storesqldataincomboxtp();
如果(DTable.Rows.Count>0)
{
for(int i=0;i
我想显示存储在“TimeBlock”中的内容,而不是5 System.Data.DataRow。
“按时间段从时间段组中选择时间段”显示:
"08-00 - 10:00"
"10:00 - 12:00"
"12:00 - 14:00"
"14:00 - 16:00"
“16:00-18:00”
我怎样才能解决这个问题
谢谢在CBTime上调用Add()时,您没有进入字段级别。在您的条件检查中,这样做可以检查您的表是否有行:
foreach (DataRow dRow in DTable.Rows)
{
CBTime.Items.Add(dRow["TimeBlock"]);
}