0

ドメイン モデルから特定のフィールドを選択し、ドメイン モデル内のフィールドでグループ化し、結果を ViewModel に入れたいのですが、Linq 構文を正しく取得できません。

私のモデルは:

public class Offer
{
    public int OfferId { get; set; }
    public string Inclusions { get; set; }
    public string Property { get; set; }
    public bool IncludeInOffer { get; set; }
    public Guid guid { get; set; }
    public int NumPeople { get; set; }
    public int NumNights { get; set; }
    public DateTime ArrivalDate { get; set; }
    public string CustomerName { get; set; }
    public string EmailAddress { get; set; }
    public DateTime OfferCreatedOn { get; set; }
    public string Email { get; set; }
    public string OfferReference { get; set; }

     }

私のViewModelは次のとおりです。

 public class OfferVMList
{
    public string guid { get; set; }
    public int NumPeople { get; set; }
    public int NumNights { get; set; }
    public DateTime ArrivalDate { get; set; }
    public string CustomerName { get; set; }
    public string EmailAddress { get; set; }
    public DateTime OfferCreatedOn { get; set; }
    public string Email { get; set; }
    public string OfferReference { get; set; }
}

私のLinqは:

 OfferVMList item = db.Offers
        .GroupBy(x => x.OfferReference)
        .Select(ct => new OfferVMList
        {
            NumPeople = ct.NumPeople           
        })
        .OrderBy(x => x.ArrivalDate);

ただし、エラーメッセージは次のとおりです。

System.Linq.IGrouping<string,FGBS.Models.Offer>' does not contain a definition for 'NumPeople' and no extension method 'NumPeople' accepting a first argument of type 'System.Linq.IGrouping<string,FGBS.Models.Offer>' could be found (are you missing a using directive or an assembly reference?)'

私がどこで間違っているのか誰にもわかりますか?

ありがとうございました

4

1 に答える 1