0

クラスがあります

 public class Offer
{
    public Int32 OfferId { get; set; }
    public string OfferTitle { get; set; }
    public string OfferDescription { get; set; }

}

そして別のクラス

 public class OfferLocationViewModel
{
    public Offer Offer { get; set; }
    public Int32 InTotalBranch { get; set; }
    public Int32 BusinessTotalLocation { get; set; }
}

今私のコントローラーには次のものがあります

 public ActionResult PresentOffers(Guid id)
    {
        DateTime todaysDate=Utility.getCurrentDateTime();

        var rOffers=(from k in dc.GetPresentOffers(id,todaysDate)
                     select new OfferLocationViewModel()
                     {
                        Offer.  //I dont get anything here..

                     }).ToList();


        return PartialView();
    }

問題は私のコントローラーにあります。「Offer」クラスのどのプロパティにもアクセスできません!! 新しい OfferLocationViewModel() を作成していて、これには「オファー」タイプのプロパティがあるので、プロパティにアクセスできると思いました..しかし、できません。

誰かがそれを行う方法について何か考えを教えてもらえますか?

4

1 に答える 1

2

あなたのようなクラス初期化子new OfferLocationViewModel { ... }では、即時のプロパティ、つまり「Offer = new Offer()」のみを設定できます。

初期化子を介して、含まれている型のプロパティにアクセスすることはできません。

Offer次のように、指定されたプロパティを使用して、ビュー モデルを新しいオファーに初期化できます。

var rOffers = (from k in dc.GetPresentOffers(id,todaysDate)
               select new OfferLocationViewModel {
                   Offer = new Offer {
                       OfferId = ...,
                       OfferTitle = ...,
                       OfferDescription = ...
                   }
               }).ToList();
于 2012-08-31T14:06:58.740 に答える