连接两个数据表期间匿名类型成员声明符无效

Any*_*are 4 c# linq asp.net datatable anonymous

我尝试执行以下连接:

var collection = from t1 in dt1.AsEnumerable()
                 join t2 in dt2.AsEnumerable()
                 on  new { 
                     t1.["main_code"], 
                     t1["year"]} 
                     equals new { 
                         t2["dep_code"], 
                         t2["dep_year"] }
                         select new { 
                             emp_name = t1["name"], 
                             bonus_desc = t1["bonus_desc"],
                             dep_name = t2["dep_name"] };
Run Code Online (Sandbox Code Playgroud)

但我面临以下构建错误!

无效的匿名类型成员声明符

Ali*_*eza 5

匿名类型的名称属性join

var collection = from t1 in dt1.AsEnumerable()
                 join t2 in dt2.AsEnumerable()
                 on  new { PropertyA= t1["main_code"], PropertyB=t1["year"]} equals new { PropertyA=t2["dep_code"], PropertyB=t2["dep_year"] }
                 select new { emp_name = t1["name"], bonus_desc = t1["bonus_desc"],dep_name = t2["dep_name"] };
Run Code Online (Sandbox Code Playgroud)