2014-03-06 52 views
0

我有兩個表連接PrId列,我有一個視圖,顯示兩個表中的兩列,第一列第一列和第二列第二列。我的ActionResult是:asp.net mvc linq我想從兩個連接表中取出兩列

public ActionResult extrapoints() 
     { 
      ViewBag.dList = (from m in _session.customer 
          join p in _session.Products on m.PrId equals p.PrId 
          where m.UserId== 'john' 
          select new { FName = m.FName, price=p.price}); 


      return View(); 
     } 

,並鑑於我想同時顯示FName參數和價格,我有以下看法:

@foreach(在ViewBag.dList VAR項目) {

<tr> 

    <td>@item.FName </td> 
    <td> @item.price</td> 
    </tr> 

} 但顯示錯誤對象'不包含FName的定義,但當我使用沒有Fname,價格像

@foreach (var item in ViewBag.dList) 
{ 

     <tr> 

     <td>@item</td> 
     <td> @item</td> 
     </tr> 


} 

是顯示: {FName參數=賽倫德拉,價格= 1000}

怎麼解決,請大家幫忙

回答

0

你可以轉換匿名類類型類,先添加這個類

class Test 
    { 
     public string FName { get; set; } 
     public decimal price { get; set; } 

    } 

,讓你LINQ statment作爲

ViewBag.dList = (from m in _session.customer 
          join p in _session.Products on m.PrId equals p.PrId 
          where m.UserId== 'john' 
          select new Test{ FName = m.FName, price=p.price}); 

終於鑄的ViewPage鍵入 「測試」

@foreach (var item in (List<Test>)ViewBag.dList) 
{ 

     <tr> 

     <td>@item.Fname</td> 
     <td> @item.price</td> 
     </tr> 


} 
+0

很多謝謝你幫助我 – shailendra