LINQ新列作为对列的引用

LINQ新列作为对列的引用,linq,Linq,我想问一下,如果我使用一个新创建的列作为对另一个新列的引用,在LINQ中是否可能?就像数据集中的表达式一样 前 谢谢不,你不能那样做。但是,您可以写: var t = from t1 in ds.table let c1 = t1.col1 + 1 select new { c1, c2 = c1 + 2 }; 为什么他的例子不起作用?您还引用了第一列。您的代码与他的代码有何不同?@Hasan:在我的

我想问一下,如果我使用一个新创建的列作为对另一个新列的引用,在LINQ中是否可能?就像数据集中的表达式一样


谢谢不,你不能那样做。但是,您可以写:

var t = from t1 in ds.table
        let c1 = t1.col1 + 1
        select new {
           c1,
           c2 = c1 + 2
         };

为什么他的例子不起作用?您还引用了第一列。您的代码与他的代码有何不同?@Hasan:在我的示例中,
c2
的表达式指的是额外的范围变量
c1
,而不是它正在创建的匿名类型的
c1
属性。哦,我刚刚注意到了这一点。谢谢你的解释。@coreleone_1218:我不清楚你为什么不想使用我在回答中给出的表格——应该可以。
var t = from t1 in ds.table
        let c1 = t1.col1 + 1
        select new {
           c1,
           c2 = c1 + 2
         };