从c#.net中列表框中的多个选定项构建查询
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从c#.net中列表框中的多个选定项构建查询相关的知识,希望对你有一定的参考价值。
我想将多个选定的项目从一个列表框传输到另一个列表框,然后发送查询以显示列表框2的选定项目中的数据库。这意味着使用where子句显示表格,where条件是列表中选定的项目方框2。
protected void Button1_Click(object sender, EventArgs e)
{
if (!String.IsNullOrEmpty(TextBox1.Text))
{
ListBox2.Items.Add(TextBox1.Text);
TextBox1.Text = "";
}
else
{
if (ListBox1.SelectedIndex >= 0)
{
for (int i = 0; i < ListBox1.Items.Count; i++)
{
if (ListBox1.Items[i].Selected)
{
if (!arraylist1.Contains(ListBox1.Items[i]))
{
arraylist1.Add(ListBox1.Items[i]);
}
}
}
for (int i = 0; i < arraylist1.Count; i++)
{
if (!ListBox2.Items.Contains(((ListItem)arraylist1[i])))
{
ListBox2.Items.Add(((ListItem)arraylist1[i]));
}
ListBox1.Items.Remove(((ListItem)arraylist1[i]));
}
ListBox2.SelectedIndex = -1;
}
else
{
}
}
}
protected void Button2_Click(object sender, EventArgs e)
{
if(ListBox2.SelectedIndex >= 0)
{
for(int i = 0;i < ListBox2.Items.Count; i++)
{
if(ListBox2.Items[i].Selected)
{
if(!arraylist2.Contains(ListBox2.Items[i]))
{
arraylist2.Add(ListBox2.Items[i]);
}
}
}
for(int i = 0;i < arraylist2.Count; i++)
{
if(!ListBox2.Items.Contains(((ListItem)arraylist2[i])))
{
ListBox1.Items.Add(((ListItem)arraylist2[i]));
}
ListBox2.Items.Remove(((ListItem)arraylist2[i]));
}
ListBox1.SelectedIndex = -1;
}
else
{
}
}
我写这个是从一个列表框转移到另一个列表框。但是我如何使用where子句编写查询以显示数据,并从列表框中获取where子句的条件2.Kindly help。
答案
根据您的查询,您可以添加代码以使用Button2_Click
函数末尾的where子句检索数据,
使用Ado.net添加Sql连接,或者使用什么框架进行数据库连接执行查询,我已经添加到数据库并从中获取结果。
现在从这些结果中你可以绑定新的列表框(我想你知道如何绑定查询中的检索结果,因为你已经绑定了列表框)
protected void Button2_Click(object sender, EventArgs e)
{
if(ListBox2.SelectedIndex >= 0)
{
for(int i = 0;i < ListBox2.Items.Count; i++)
{
if(ListBox2.Items[i].Selected)
{
if(!arraylist2.Contains(ListBox2.Items[i]))
{
arraylist2.Add(ListBox2.Items[i]);
}
}
}
for(int i = 0;i < arraylist2.Count; i++)
{
if(!ListBox2.Items.Contains(((ListItem)arraylist2[i])))
{
ListBox1.Items.Add(((ListItem)arraylist2[i]));
}
ListBox2.Items.Remove(((ListItem)arraylist2[i]));
}
ListBox1.SelectedIndex = -1;
// Construct the query with where clause
string whareClause = string.Join("','", arraylist2.Select(e=>e.Value));
string query = "select * from ListBox2 where items in ('"+ whareClause + "')";
// Call your db using Ade.net
// Bind your result to new list box
}
else
{
}
}
以上是关于从c#.net中列表框中的多个选定项构建查询的主要内容,如果未能解决你的问题,请参考以下文章