C# C从db到treeview菜单创建
我的目标是使用dt、ds和从DB表获取数据来创建treeview菜单。我的代码如下所示。Ds出现错误,我在代码中标记它,您可以看到。。它在“İşlemleri”附近给出错误Systax,İlemleri是tnParent.Text包含的值的一部分。吉埃勒梅里C# C从db到treeview菜单创建,c#,foreach,treeview,dataset,dataadapter,C#,Foreach,Treeview,Dataset,Dataadapter,我的目标是使用dt、ds和从DB表获取数据来创建treeview菜单。我的代码如下所示。Ds出现错误,我在代码中标记它,您可以看到。。它在“İşlemleri”附近给出错误Systax,İlemleri是tnParent.Text包含的值的一部分。吉埃勒梅里 void fill_Tree2() { DataSet PrSet = PDataset("select * from mnu_tbl_mnuElmnlr"); treeView1.Nodes.Clear()
void fill_Tree2()
{
DataSet PrSet = PDataset("select * from mnu_tbl_mnuElmnlr");
treeView1.Nodes.Clear();
foreach (DataRow dr in PrSet.Tables[0].Rows)
{
TreeNode tnParent = new TreeNode();
tnParent.Text = dr["MenuAdi"].ToString(); /////////////////// 'Gişe İşlemleri'
tnParent.Tag = dr["id"].ToString();
tnParent.Expand();
treeView1.Nodes.Add(tnParent);
FillChild(tnParent, tnParent.Text);
}
}
public void FillChild(TreeNode parent, string ParentId)
{
DataSet ds = PDataset("Select altMenuAdi from mnu_tbl_AltElmnlr where ustMenuId = (select id from mnu_tbl_mnuElmnlr));
parent.Nodes.Clear();
foreach (DataRow dr in ds.Tables[0].Rows)
{
TreeNode child = new TreeNode();
child.Text = dr["altMenuAdi"].ToString();
// child.Tag = dr["ChildId"].ToString().Trim();
parent.Nodes.Add(child);
}
}
protected DataSet PDataset(string Select_Statement)
{
SqlConnection conn = new SqlConnection();
// conn.ConnectionString = ConfigurationManager.ConnectionStrings["1123"].ConnectionString;
SqlConnection SqlCon = new SqlConnection("server=123;Database=123;Trusted_Connection=True;");
SqlDataAdapter ad = new SqlDataAdapter(Select_Statement, SqlCon);
DataSet ds = new DataSet();
ad.Fill(ds); /////// Here it gives an error " Incorrect Systax near 'İşlemleri' "
return ds;
}
ustMenuId是什么数据类型?ustMenuId类型在数据库中是Int您是否尝试直接运行对sql server的查询?我用此更改查询,但这次它显示Select altMenuAdi from mnu_tbl_AltElmnlr,其中ustMenuId=Select id from mnu_tbl_mnuElmnlr子查询返回的值超过1。当子查询在=、!=、=或者当子查询用作表达式时。请从mnu_tbl_mnuElmnlr中选择top 1 id,但是否有多个具有相同id的值?