0

重複の可能性:
単一の Razor ビューで複数のモデルを編集する方法

MVC3 を使用して注文機能を作成しています。Order と OrderDetail モデルがあります。Order と OrderDetail は 1 対多の関係にあります。2 つのモデルは次のようになります。

public class order
{
    public int OrderId{get;set;}
    public int OrderStatusID { get; set; } 

    public virtual OrderStatus OrderStatus { get; set; }
    public virtual ICollection<OrderDetail> OrderDetails { get; set; }

}

 public  class OrderDetail
 {
    public int OrderDetailID { get; set; }
    public int OrderID { get; set; }
    public int Quantity { get; set; }
    public string Description { get; set; } 
    public int CategoryID { get; set; }   
    public virtual Order Order { get; set; }
    public virtual Category Category { get; set; }

}

ビューで両方を使用したいので、以下の OrderViewModel を作成しました。

public class OrderViewModel
{
    public virtual Order Order { get;set; }
    public virtual List<OrderDetail> OrderDetails { get;set; }
}

2 つの質問があります。

1, OrderViewModel を使用して、注文を作成および編集するためのページを作成するにはどうすればよいですか? OrderDetail の部分ビューを作成しました。作成ページでは、次のようなことをしましたが、正しくないと思います。

@foreach (var detail in Model.OrderDetails)
{
    @Html.Partial("_OrderDetail", detail)  
}   

2、Order と OrderDetail は一対多の関係にあるので、Order 作成ページで、ユーザーが複数の OrderDetail を追加できるようにしたい。jQuery を使用して、複数の OrderDetail フィールドを作成できるボタンを作成しましたが、すべての OrderDetail から値を取得する方法がわかりません。

これはどのように行われますか?

4

2 に答える 2

0

以下のリンクを見て、Darin Dimitrovの回答をご覧ください。

リストの厳密に型指定されたビューで LabelFor を使用する方法

LabelFor がループで機能しない (for/foreach/template)

まだ質問がある場合はお知らせください。

于 2012-06-19T04:45:25.497 に答える
0

詳細に使用EditorForします。

于 2012-06-19T01:07:43.940 に答える