C# 调用函数

来源:百度知道 编辑:UC知道 时间:2024/06/09 06:24:29
tab1,tab2分别为DataTable;a,m分别为tab1和tab2的列名.
table(tab1,tab2,"t1.a=t2.m")
public void table(DataTable t1,DataTable t2,String str1)
调用table后,str1的值为tab1.a=tab2.m;请问如何获取到是t1.a=t2.m.
或者实现类似
table(tab1,tab2,"tab1.a=tab2.m")调用时
public void table(DataTable t1,DataTable t2,String str1)为(t1,t2,但str1是"tab1.a=tab2.m")(如果是t1,t2,t1.a=t2.m就能进行判断了)
楼下几位兄弟说的强制或者定义好格式我也考虑过.但如果有两个条件或者其他条件就无法满足函数要求了.

//返回级联查询结果
public DataTable table(DataTable t1,DataTable t2,String col1,string col2)
{
DataTable dt = new DataTable();//创建一个新的datatable,以存储查询结果
dt.Columns.Add(col1);
dt.Columns.Add(col2);//给新datatable添加需要用到的字段
DataRow row;
foreach(DataRow r1 in t1.Rows)
{
foreach(DataRow r2 in t2.Rows)
{
if(r1[col1]==r2[col2]){
row = dt.NewRow();
row[col1] = r1[col1];
row[col2] = r2[col2];//可以赋t1,t2中的任何一个字段值
dt.Rows.Add(row);
}
}
return dt;
}
}

你不如 第三个参数去接 a=m,然后反正都是 第一个表的某个字段去等于第二个表的某个字段,然后用第一个表的a去关联第二个表的m

//如果tab1的第i行的a字段如果等于tab2的第j行的m字段的话。。。
if(tab1.rows[i][a].Tostring() == tab2.rows[j][m].Tostring()) {
//这里写你想处理点什么。。。
}

你还是把你想做些什么,想实现点什么写一下吧。。要不问题也解决不明白。。。

向实现什么再说明白点 想区分什么

额~! 这样 传四个参数
table (DataTable t1,DataTable t2,String str1,String str2)

STR1=“a”,STR2=m
这样也便于修改

只能做这样的弱类赋值方法了
DataTable tab1,tab2;