2017-01-06 15 views
0

私はビューをモデルとし、view1に部分ビューがあります。ClassBをモデルとして使用したいと思います。パーシャルビューで別のモデルを使用

は可能ですか?まず、あなたが実際に表示するために必要なものを

<div class="modal-header"> 
    <h4 class="modal-title">Assign Device</h4> 
</div> 
<div class="modal-body"> 
    Devices list here 
</div> 
<div class="modal-footer"> 
    <button type="button" class="btn btn-primary">Save</button> 
    <button type="button" class="btn btn-primary" data-dismiss="modal">Close</button> 
</div> 
+0

はい、それはあなたが部分的に呼び出しているか、ですでも? – DavidG

+0

@DavidG '@ {Html.RenderPartial(" AssignDevice ");}' –

+0

最初に、句読点はあまり必要ありません。 '@Html.RenderPartial(" AssignDevice ")'は十分でクリーナーです。第二に、私は 'ClassB'モデルがどこにあるのか尋ねることを忘れましたか? – DavidG

答えて

1

[HttpGet] 
     public ActionResult AssignDevice() 
     { 
      //list of devices 
      List<Device> dev = new List<Device>(); 
      dev.Add(new Device { Brand = "Samsung" }); 
      dev.Add(new Device { Brand = "SONY" }); 

      return PartialView(); 
     } 

、ここで部分ビュー:

EDITclassB

public class Device 
    { 

     public int DeviceId { get; set; } 

     public string SerialNo { get; set; } 

     public string IMME { get; set; } 

     public string RefNo { get; set; } 

     public string Supplier { get; set; } 

     public string Brand { get; set; } 

     public string ModelNo { get; set; } 

     public DateTime PurchaseDate { get; set; } 

     public DateTime RegisterDate { get; set; } 

     public string Notes { get; set; } 

     public virtual ICollection<ContractsDevice> ContractsDevices { get; set; } 
    } 

、ここでアクションメソッドを追加しますList<Device> a

@model System.Collections.Generic.List<Device> 

<div class="modal-header"> 
    <h4 class="modal-title">Assign Device</h4> 
</div> 
<div class="modal-body"> 
    @foreach(var device in Model) 
    { 
     <div>@device.SerialNo</div> 
    } 
</div> 
<div class="modal-footer"> 
    <button type="button" class="btn btn-primary">Save</button> 
    <button type="button" class="btn btn-primary" data-dismiss="modal">Close</button> 
</div> 

第二に、あなたが実際には部分的ではない厳密には、子アクションとしてこれを呼び出している:ちょうどDeviceので、あなたのビューは次のようなものでなければならないND。ですから、このような親ビューを形成し、それを呼び出すべきである:

@Html.Action("AssignDevice") 

最後に、アクションであなたのデータを返すことを忘れないでください:

return PartialView(dev); 
+0

ありがとうございました。 –

関連する問題