我有两张桌子:
table product1 with columns: product_id prodcut_name category_id
another table categories category_id category_name category_description
我使用DataGridView
填充产品详细信息并且工作正常。
我试图从同一个表中获取两个列值,具体取决于我得到以下代码的相同条件:
string desc = Convert.ToString(selectedRow.Cells["productdescr"].Value);
string productname = Convert.ToString(selectedRow.Cells["productnam"].Value);
string productprices = Convert.ToString(selectedRow.Cells["productprice"].Value);
int productids = Convert.ToInt32(selectedRow.Cells["productid"].Value);
条件1:
int categoryids = (from cats in tsg.product1
where cats.product_Name.Equals(productname)
select cats.category_Id).SingleOrDefault();
条件2:
var catogynames = (from categorytypes in tsg.categories
where categorytypes.category_Id.Equals(categoryids)
select categorytypes.category_Name
).SingleOrDefault();
条件3:
var categoprydecription = (from categorytable in tsg.categories
where categorytable.category_Id.Equals(categoryids)
select categorytable.category_Description
).SingleOrDefault();
我想从条件2 获取categorytypes.category_description
以及此categorytypes.category_Name
,是否可以合并这两个条件? (条件2和条件3)
答案 0 :(得分:1)
我认为你可以用这种方式做到这一点
(from categorytable in tsg.categories
where categorytable.category_Id == categoryids
select new {Name=categorytable.category_Name,
Description=categorytable.category_Description}).SingleOrDefault();
这将是一个匿名类,包含您想要的类别的名称和描述。