在 LINQ 中使用参数(字符串)
Using A Parametr (string) in LINQ
我正在尝试使用列表框进行 Select 搜索,
但我不能在 LINQ 中使用字符串 si,我不知道如何使用它,
我做了这个代码,但不知道如何使用 si。
var db = new DataClasses1DataContext();
int selectedIndex = listBox1.SelectedIndex;
string si = "";
if (selectedIndex == 0) si = "id" ;
if (selectedIndex == 1) si = "name";
if (selectedIndex == 2) si = "sex";
if (selectedIndex == 3) si = "address";
if (selectedIndex == 4) si = "phone";
if (selectedIndex == 5) si = "web";
var qsearch = db.users.Where(c => c.[i want use si in this place].Contains(textBox7.Text));
dataGridView1.DataSource = qsearch;
为什么不直接在每个 if
语句中设置查询
switch (selectedIndex)
{
case 0:
dataGridView1.DataSource = db.users.Where(u => u.Id.Contains(...));
break;
....
}
我正在尝试使用列表框进行 Select 搜索, 但我不能在 LINQ 中使用字符串 si,我不知道如何使用它, 我做了这个代码,但不知道如何使用 si。
var db = new DataClasses1DataContext();
int selectedIndex = listBox1.SelectedIndex;
string si = "";
if (selectedIndex == 0) si = "id" ;
if (selectedIndex == 1) si = "name";
if (selectedIndex == 2) si = "sex";
if (selectedIndex == 3) si = "address";
if (selectedIndex == 4) si = "phone";
if (selectedIndex == 5) si = "web";
var qsearch = db.users.Where(c => c.[i want use si in this place].Contains(textBox7.Text));
dataGridView1.DataSource = qsearch;
为什么不直接在每个 if
语句中设置查询
switch (selectedIndex)
{
case 0:
dataGridView1.DataSource = db.users.Where(u => u.Id.Contains(...));
break;
....
}