1

ビューの会計システムの現在の要素のコントローラーでエンティティ フレームワークを使用してモデル クラスの下の 2 つを結合したい

<pre>
namespace AccountingSystem.Models
{
    public class BuyFactor
    {
        public int BuyFactorId { get; set; }        
        public DateTime CreateDate { get; set; }        
        public string Seller { get; set; }
        public string Creator { get; set; }
        public decimal SumAllPrice { get; set; }
        public ICollection<BuyFactorDetail> BuyFactorDetails { get; set; }
    }
}

namespace AccountingSystem.Models
{
    public class BuyFactorDetail
    {
        public int BuyFactorDetailId { get; set; }         
        public int Number { get; set; }
        public string Description { get; set; }
        public decimal SumPrice { get; set; }
        public int BuyFactorId { get; set; }
        public virtual BuyFactor BuyFactor { get; set; }        
        public virtual Commodity Commodity { get; set; }        
    }
}
</pre>
4

6 に答える 6

1

新しいモデルを作成する

public class JointModel
{
   public BuyFactor BuyFactor {get; set;}
   public BuyFactorDetail BuyFactorDetail {get; set;}
}
于 2013-08-01T05:15:14.503 に答える
1

別のモデルを作成し、そこで他のモデルを呼び出すだけです

 public class ParentModel
 {
 public BuyFactor BuyFactor {get; set;}
 public BuyFactorDetail BuyFactorDetail {get; set;}
 }

したがって、ビューでそれを呼び出すとき

 @model IEnumerable<AccountingSystem.Models.ParentModel>

   @Html.DisplayNameFor(model => model.BuyFactor.Creator)
于 2017-03-15T11:43:51.087 に答える
0

次のようなLinq結合クエリを使用します

    var query = (from b in context.BuyFactors
                     join d in context.BuyFactorDetail
                     on
..
                     select new
                     {
                        BuyFactorId = b.BuyFactorId,
                        ....
                        BuyFactorDetailId = d.BuyFactorDetailId,
                        ...

    ..
                 }));
于 2013-08-01T06:24:19.553 に答える
0

コントローラーで ViewBag を使用して、両方にそれぞれのオブジェクトを割り当てます。

ViewBag.BuyFactor= BuyFactor;
ViewBab.BuyFactorDetail = BuyFactorDetail;

ビューで使用するには、それらを型キャストする必要があります。

于 2013-09-30T13:00:27.507 に答える
0

メイン モデルでModelとして定義する最良の方法Property

例えば

 public class BuyFactor
{
    public int BuyFactorId { get; set; }        
    public DateTime CreateDate { get; set; }        
    public string Seller { get; set; }
    public string Creator { get; set; }
    public decimal SumAllPrice { get; set; }
    public ICollection<BuyFactorDetail> BuyFactorDetails { get; set; }
    public BuyFactorDetail BuyFactorEntity {get;set;}
}

値を代入して次BuyFactorEntityのように使用Model.BuyFactorEntity.BuyFactorDetailId

于 2013-08-01T06:18:37.270 に答える