0

こんにちは私はプロパティを含む2つのクラスを持っています&私はそのプロパティとして2つのクラスのリストを含むクラスを持っています。created_dateでソートされた両方のクラスのオブジェクトを含む単一のリストを返すことになっています。any1は役に立ちますか?以下の3つのクラスを貼り付けました。

これはファーストクラスです:-

public partial class TouchPointModel : BaseModel
{
    public List<EntityModel> Entities { get; set; }
    public UserModel User { get; set; }
    public int TouchPointId { get; set; }
    public string Description { get; set; }
    public int EntityId { get; set; }
    public DateTime Created_date{ get;set; }
}

これは2番目のクラスです:-

public partial class SurveyModel : BaseModel
{
    public int Id { get; set; }
    public int SelectedEntityId { get; set; }
    public int SelectedEntityType { get; set; }
    public int ParentEntityId { get; set; }
    public bool IsMyProjects { get; set; }
    public DateTime Created_date{ get;set; }
}

&これは一般的なクラスです

public partial class RecentInteractionsModel
{
    public int ContactId { get; set; }
    public List<TouchPointModel> TouchPoints { get; set; }
    public List<SurveyModel> Surveys { get; set; }
    public int EntityId { get; set; }
    public int EntityTypeId { get; set; }
    public int SelectedParentId { get; set; }
}

UIには、作成日に応じて最新のタッチポイントまたは調査を表示することになっています。

4

1 に答える 1

2

Interface2つの間に必要になるようですClasses

public interface IMyInterface
{
   DateTime Created_date{ get;set; }

   // add any other common properties between the 2 models

}


public partial class TouchPointModel : BaseModel, IMyInterface
{
   .......

   public DateTime Created_date{ get;set; }
}

public partial class SurveyModel : IMyInterface
{
   .......

   public DateTime Created_date{ get;set; }
}

次に、単一のリストを作成できますIMyInterface

List<IMyInterface> allItems = TouchPoints.Cast<IMyInterface>()
                       .Union(Surveys.Cast<IMyInterface>())
                       .OrderBy(x => x.Created_date).ToList();
于 2013-03-04T04:57:36.693 に答える