簡體   English   中英

我可以在實體框架分頁語法中使用join嗎?

[英]Can I use join in Entity Framwork Pagination syntax?

我想知道是否有人可以在這里提供幫助。我是實體框架新手。 我有2個不同的Query.I想要加入它們並得到1.這是我的代碼:

 public static List<BankDepositHistory> GetAllByPagination(int page ,int stepes)
        {

            page=page-1;

            using(MyketAdsEntities context = new MyketAdsEntities())
            {
                var transactionlist = context.BankDepositHistories.ToList();
                var start = page * stepes;
              var result=  context.BankDepositHistories.OrderByDescending(c=>c.AccountId)

                    //anny code that give me count as field
                    .Skip(start)
                    .Take(stepes)
                    .ToList();
                return (result);

            }
        }
        public static int GetCount()
        {
            using (MyketAdsEntities context = new MyketAdsEntities())
            {
                int count = context.BankDepositHistories.Count();
                return count;
            }

        }

如您所見,我有2種方法。 我只想擁有GetAllByPagination。 非常感謝

假設您在Entity下面,那么下面的設置應該可以使用。

public BankDepositHistory
{

public string UserName {get;set}

//etc..

}

創建一個視圖模型

public class BankDepositHistoryVM
{

public List<BankDepositHistory> bankDetails {get;set;}

public int Count {get;set;}

}

返回視圖模型

 public static List<BankDepositHistoryVM> GetAllByPagination(int page ,int stepes)
    {

        page=page-1;

        using(MyketAdsEntities context = new MyketAdsEntities())
        {
            var transactionlist = context.BankDepositHistories.ToList();
            var start = page * stepes;
          var result=  context.BankDepositHistories.OrderByDescending(c=>c.AccountId)
                .Skip(start)
                .Take(stepes)
                .ToList();

  List<BankDepositHistoryVM> resultVM = new List<BankDepositHistoryVM>();

  resultVM.bankDetails = result;
  resultVM.Count = result.Count();

            return resultVM;

        }
    }

調用方法:

List<BankDepositHistory> bankDetails = className.GetAllByPagination.bankDetails;

int count = className.GetAllByPagination.Count;

List<BankDepositHistoryVM> allDetails = className.GetAllByPagination();

希望會有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM