//设置连接字符串
string connectString ="server=.;password=;uid=sa;database=Northwind";
SqlConnection sqlConnection=new SqlConnection(connectString);
sqlConnection.Open();
// 打开适配器
string cmdText ="SELECT CustomerID,CompanyName FROM Customers ";
SqlDataAdapter sqlDataAdapter =new SqlDataAdapter(cmdText,sqlConnection);
DataSet dataSet=new DataSet();
sqlDataAdapter.Fill(dataSet,"Customers"); cmdText ="SELECT CustomerID,OrderID FROM Orders ";
sqlDataAdapter =new SqlDataAdapter(cmdText,sqlConnection);
sqlDataAdapter.Fill(dataSet,"Orders");// 连接2个表
DataRelation dataRelation = dataSet.Relations.Add("CustomersOrders",dataSet.Tables["Customers"].Columns["CustomerID"],
dataSet.Tables["Orders"].Columns["CustomerID"]);
foreach(DataRow customerDataRow in dataSet.Tables["Customers"].Rows )
{
// 这里可以+判断条件筛选
Console.WriteLine("CustomerID:" + customerDataRow["CustomerID"].ToString() + " CompanyName:" + customerDataRow["CompanyName"].ToString());
foreach(DataRow ordersDataRow in customerDataRow.GetChildRows(dataRelation) )
{
// 这里可以+判断条件筛选
Console.WriteLine("CustomerID:"+ ordersDataRow["CustomerID"].ToString() + " OrderID:" + ordersDataRow["OrderID"].ToString());
}
}
string connectString ="server=.;password=;uid=sa;database=Northwind";
SqlConnection sqlConnection=new SqlConnection(connectString);
sqlConnection.Open();
// 打开适配器
string cmdText ="SELECT CustomerID,CompanyName FROM Customers ";
SqlDataAdapter sqlDataAdapter =new SqlDataAdapter(cmdText,sqlConnection);
DataSet dataSet=new DataSet();
sqlDataAdapter.Fill(dataSet,"Customers"); cmdText ="SELECT CustomerID,OrderID FROM Orders ";
sqlDataAdapter =new SqlDataAdapter(cmdText,sqlConnection);
sqlDataAdapter.Fill(dataSet,"Orders");// 连接2个表
DataRelation dataRelation = dataSet.Relations.Add("CustomersOrders",dataSet.Tables["Customers"].Columns["CustomerID"],
dataSet.Tables["Orders"].Columns["CustomerID"]);
foreach(DataRow customerDataRow in dataSet.Tables["Customers"].Rows )
{
// 这里可以+判断条件筛选
Console.WriteLine("CustomerID:" + customerDataRow["CustomerID"].ToString() + " CompanyName:" + customerDataRow["CompanyName"].ToString());
foreach(DataRow ordersDataRow in customerDataRow.GetChildRows(dataRelation) )
{
// 这里可以+判断条件筛选
Console.WriteLine("CustomerID:"+ ordersDataRow["CustomerID"].ToString() + " OrderID:" + ordersDataRow["OrderID"].ToString());
}
}
create proc prc_system_filter
(
@SQLEx varcvhar(3000);
)
as
declare @strSQL varchar(2000); set @strSQL='select * from table1 inner join tabl2 on tabl1.id=table2.id inner join
table3 on table2.id=table3.id where (1>0)'; if(@SQLEx<>'' and rtrim(ltrim(@SQLEx))<>'')
set @strSQL=@strSQL+@SQLEx;
endif exec(@strSQL);
请看 www.xproer.com/bbs
左边树型目录导航--"技术交流区"--".NET开发技术"--"DataRepeater利用DataRelation显示主从表信息(可控制从表信息隐藏和显示).(DataRepeater嵌套)"文章
ds.Relations.Add("r2", ds.Tables[1].Columns["ClassID"], ds.Tables[1].Columns["ClassID"]); //查询 DataView dv = ds.Tables[0].DefaultView;
for (int i = 0; i < dv.Count;i++)
{ DataView dv1 = dv[i].CreateChildView("r1");
for (int j = 0; j > dv1.Count; j++)
{
DataView dv2 = dv1[i].CreateChildView("r2");
}
}