C# LINQ 多表查询
在C#中使用linq实现多表查询,首先需要在c#中连接你的数据库首先我们先创建一个数据库和两个数据表然后在表中插入数据设置完毕后到c#中把数据库创建完毕后在main函数中连接字符串也就是连接自己的sqlseverstring str = "server=DESKTOP-IOK5BR8;uid=sa;pwd=123456;database=db_SouthWind";然后实例化一个数据集对象 !要引
·
在C#中使用linq实现多表查询,首先需要在c#中连接你的数据库
首先我们先创建一个数据库和两个数据表
然后在表中插入数据设置完毕后到c#中
把数据库创建完毕后在main函数中连接字符串也就是连接自己的sqlsever
string str = "server=DESKTOP-IOK5BR8;uid=sa;pwd=123456;database=db_SouthWind";
然后实例化一个数据集对象 !要引用命名空间using System.Data;
DataSet ds = new DataSet();
之后实例化一个适配器对象!要引用命名空间 using System.Data.SqlClient;然后把直接使用的数据表写上去
string sql = "select*from Product;select*from Category";
SqlDataAdapter sda = new SqlDataAdapter(sql,str);
填充数据集
sda.Fill(ds);
之后利用linq查询数据集用join进行多表连接
var rs = from x in ds.Tables[0].AsEnumerable()
join y in ds.Tables[1].AsEnumerable()
on x["CID"] equals y["CateID"]
select new
{
pid=x["PID"],
pname=x["PName"],
cname=y["CateName"]
};
最后在用foreach循环遍历出来需要的数据就可以了
foreach (var item in rs)
{
Console.WriteLine(item.pid+" "+item.pname+" "+item.cname);
}
更多推荐
已为社区贡献1条内容
所有评论(0)