Linq在加载时获得更多数据按钮单击开始索引和结束索引

adikitty CB

我正在使用webApi和linq从SQL获取数据,现在我的页面上有“加载更多”按钮,当我单击时,每次应该带20条记录,我正在使用具有开始索引和结束索引的表列ID是主键,当我单击“加载更多”按钮时,我将从列表视图中获取最后一个ID表示最后一个数据ID,我正在使用该ID具有我的起始索引,现在我的问题是当我单击加载更多时会带来20数据,但以前的数据已被删除,当我第一次单击“加载更多”按钮时,我需要获取20 + 20 = 40数据,如何实现此目的。

 //Linq//
 public dynamic getALlImage(int userID, int LastImageID)
 {
    //here LastImageId is my Listview Last data ImageID
    if  (LastImageID!=0)
     {
       startIndex= LastImageID+20;
       EndIndex=LastImageID-20;
     }
       else
     {
      startIndex= 20;
       EndIndex=0;  
     }

  GetAllListFields = (from user in dbContext.UserTable
                      join img in dbContext.ImageTable on user.userId equals img.userID into UserVoice
                      from Image in UserVoice.DefaultIfEmpty()
                      where (Image.imgId <= startIndex && Image.imgId >= EndIndex && Image.userID == userID && Image.IsStatusChecked == false)
                      orderby feeds.CreatedAt descending
                      select new
                      {
                           PostImage = Image == null ? 0 : Image.ImageID,
                          Image = usrMessae==null?0: Image.userMessage,
                          createdAt = feeds == null ? DateTime.UtcNow : feeds.CreatedAt,
                          UserId = userdata == null ? 0 : userdata.userId,
                          Name = userdata == null ? " " : userdata.Name,
                          username = userdata == null ? " " : userdata.userName,
                          Email = userdata == null ? " " : userdata.emailID,
                        }).Distinct().OrderByDescending(x => x.createdAt).Take(startIndex).ToList();
   } 


        //HTML//
<div data-role="view"> 
<div>
 <ul  data-role="listview"   data-bind="foreach:ImageList">
 <li>
 <div data-bind="text:userID"></div>
 <div data-bind="text:userName"></div>
 <div data-bind="text:UserImageSrc"></div>
 <div data-bind="text:ImageId></div>
 <div data-bind="text:PostImageSrc"></div>
 <div >
 <button data-bind="click:getLoadMoreImageData">Load More</button>
 </div>
 </li>
 </ul>
 </div>
 </div>

//Knockout Js
function UserImageViewModel()
        {
            self=this;
          var lastModelValue = (self.FeedPostdata()[self.FeedPostdata().length - 1]);
          var lastPostImageId = (lastModelValue.ImageId())

         //On Load More click  last Image ID      
         self.getLoadMoreImageData=function()
         {     
           $('#loading').show();
           var UserModel = { userID:userID,ImageId:lastPostImageId}
           jQuery.support.cors = true;
           $.ajax({
            type: "POST",
            dataType: "json",
            url: serverUrl + 'api/xxx/xxx',
            data: UserModel,
            success: function (data) {
            self.ImageList($.map(data, function (item) {
                    return new ImageModel(item);
            }));},
            complete: function () {
                $('#loading').hide();
            },
            error: function (error) {
                jsonValue = jQuery.parseJSON(error.responseText);} });}}


        // On Page Load  without last Image ID  
          self.getALlUSerImage=function()
         {

            $('#loading').show();
            var UserModel = { userID: userID}
            jQuery.support.cors = true;
            $.ajax({
            type: "POST",
            dataType: "json",
            url: serverUrl + 'api/xxx/xxx',
            data: UserModel,
            success: function (data) {
            self.ImageList($.map(data, function (item) {
                    return new ImageModel(item);
            }));},
            complete: function () {
                $('#loading').hide();
            },
            error: function (error) {
                jsonValue = jQuery.parseJSON(error.responseText);} });
                }}
                }


               //Model//
              function ImageModel(item)
              {
                self.userId=ko.observable(item.userId);
                self.userName=ko.observable(item.UserName);
                self.UserImageSrc = ko.computed(function () {
                return "data:" + self.UserImageSrcType() + ";base64," + self.UserImageSrcBase64();});   

                self.ImageID=ko.observable(item.ImageId)
                self.PostImageSrc = ko.computed(function () {
                return "data:" + self.PostImageType() + ";base64," +  self.PostImageBase64();});                      
              }

           $(document).ready(function () {
           ViewModel = new UserImageViewModel();
           ko.applyBindings(ViewModel);
           }
戴夫·克拉夫

这样的事情怎么样?

int Page = 1;
int RecordsPerPage = 10;
var q = yourQuery.Skip((Page - 1) * RecordsPerPage).Take(RecordsPerPage);

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Laravel + Vue.js。单击按钮时加载更多数据

来自分类Dev

按钮在单击时加载索引文件

来自分类Dev

如何获得发送的开始和结束的索引在spacy?

来自分类Dev

如何获得字符串匹配的开始和结束索引

来自分类Dev

在熊猫数据框中找到连续的开始和结束索引

来自分类Dev

获取单词的开始和结束索引?

来自分类Dev

String.join 开始和结束索引

来自分类Dev

实施“加载更多”按钮以在单击时加载更多元素

来自分类Dev

实施“加载更多”按钮以在单击时加载更多元素

来自分类Dev

当时间戳是索引时,如何获取groupby.agg函数的间隔开始和结束?

来自分类Dev

使用开始和结束索引以及单个where子句从Firebase数据库检索数组

来自分类Dev

如何获取熊猫中连续数据组的开始和结束索引?

来自分类Dev

加载更多数据时,CollectionView重复单元格

来自分类Dev

当到达AJAX底部时无法加载更多数据

来自分类Dev

底部滚动位置时jQuery加载更多数据

来自分类Dev

如何快速设置数组的开始和结束索引?

来自分类Dev

在列表中查找子列表的开始和结束索引

来自分类Dev

递增循环中索引的开始和结束边界

来自分类Dev

Boost.MultiArray任意开始和结束索引

来自分类Dev

带有开始和结束索引的最大子数组

来自分类Dev

如何快速设置数组的开始和结束索引?

来自分类Dev

如何在按钮单击时在主索引 html 中加载 html

来自分类Dev

使用mvc和jquery在点击时显示更多数据?

来自分类Dev

剥离字符串并获取开始索引和结束索引

来自分类Dev

如何在开始索引和结束索引之间将文件拆分为不规则部分?

来自分类Dev

按钮在javascript中单击后如何显示“没有更多数据”消息

来自分类Dev

想要在单击详细信息按钮时在另一个组件中显示更多数据(角度 6)

来自分类Dev

在按钮和正文上均单击时,“阅读更多”

来自分类Dev

UICollectionView底部的UIRefreshControl(加载更多数据)

Related 相关文章

  1. 1

    Laravel + Vue.js。单击按钮时加载更多数据

  2. 2

    按钮在单击时加载索引文件

  3. 3

    如何获得发送的开始和结束的索引在spacy?

  4. 4

    如何获得字符串匹配的开始和结束索引

  5. 5

    在熊猫数据框中找到连续的开始和结束索引

  6. 6

    获取单词的开始和结束索引?

  7. 7

    String.join 开始和结束索引

  8. 8

    实施“加载更多”按钮以在单击时加载更多元素

  9. 9

    实施“加载更多”按钮以在单击时加载更多元素

  10. 10

    当时间戳是索引时,如何获取groupby.agg函数的间隔开始和结束?

  11. 11

    使用开始和结束索引以及单个where子句从Firebase数据库检索数组

  12. 12

    如何获取熊猫中连续数据组的开始和结束索引?

  13. 13

    加载更多数据时,CollectionView重复单元格

  14. 14

    当到达AJAX底部时无法加载更多数据

  15. 15

    底部滚动位置时jQuery加载更多数据

  16. 16

    如何快速设置数组的开始和结束索引?

  17. 17

    在列表中查找子列表的开始和结束索引

  18. 18

    递增循环中索引的开始和结束边界

  19. 19

    Boost.MultiArray任意开始和结束索引

  20. 20

    带有开始和结束索引的最大子数组

  21. 21

    如何快速设置数组的开始和结束索引?

  22. 22

    如何在按钮单击时在主索引 html 中加载 html

  23. 23

    使用mvc和jquery在点击时显示更多数据?

  24. 24

    剥离字符串并获取开始索引和结束索引

  25. 25

    如何在开始索引和结束索引之间将文件拆分为不规则部分?

  26. 26

    按钮在javascript中单击后如何显示“没有更多数据”消息

  27. 27

    想要在单击详细信息按钮时在另一个组件中显示更多数据(角度 6)

  28. 28

    在按钮和正文上均单击时,“阅读更多”

  29. 29

    UICollectionView底部的UIRefreshControl(加载更多数据)

热门标签

归档