var result= from a in A
join b in B on a.BId= b.Id
select new {a.A1, a.A2,....,B.B1,B.B2};
if(this.txt.text!="")
result= result.Where(x=> x.A1 == this.txt.text);
if(this.txt2.text!="")
result = result.Where(x=> x.B1 == this.txt2.text);
...
提问者对于答案的评价:高明。谢谢。 原来我也是这么写的。
可中间犯了个小错误。 谢谢你的指教,