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

Invalid anonymous type member declarator error

我完全按照示例和 Whosebug 答案中的描述进行操作,并且...但是我收到错误消息:

Invalid anonymous type member declarator. Anonymous type members must be declared with a member assignment, simple name or member access.

这部分:db.Products = p, db.ProductDetails = d

代码如下:

using(  DatabaseDataContext db = new DatabaseDataContext()){
      var products = db.Products.GroupJoin(db.ProductDetails,
      p => p.ID,
      d => d.ProductID,
      (p, d) => new { db.Products = p, db.ProductDetails = d});
}

我做错了什么?

当我这样做时:

using(  DatabaseDataContext db = new DatabaseDataContext()){
      var products = Products.GroupJoin(ProductDetails,
      p => p.ID,
      d => d.ProductID,
      (p, d) => new { Products = p, ProductDetails = d});
}

我收到这些错误:

The name 'Products' does not exist in the current context

The name 'ProductDetails' does not exist in the current context

我不知道你在复制什么样本,但试试这个:

using(  DatabaseDataContext db = new DatabaseDataContext()){
      var products = db.Products.GroupJoin(db.ProductDetails,
      p => p.ID,
      d => d.ProductID,
      (p, d) => new { Products = p, ProductDetails = d});
}

即从匿名类型声明中删除 db.