使用Linq对象进行页面导航

时间:2016-10-26 08:28:30

标签: c# asp.net-mvc entity-framework linq wcf

我有一个WCF服务和一个显示数据库日志的MVC客户端。我已经这样做了,我从数据库中取出20个日志,并根据重新发送日期将其放入一个列表中,并将其显示在表格中。

控制器:

<nav aria-label="Page navigation">
<ul class="pagination">
    <li>
        <a href="#" aria-label="Previous">
            <span aria-hidden="true">&laquo;</span>
        </a>
    </li>
    <li><a href="#">1</a></li>
    <li><a href="#">2</a></li>
    <li><a href="#">3</a></li>
    <li><a href="#">4</a></li>    
    <li><a href="#">5</a></li>
    <li>
        <a href="#" aria-label="Next">
            <span aria-hidden="true">&raquo;</span>
        </a>
    </li>
</ul>

现在我有一个常规页面导航,我没有做任何事情。

指数:

var range = sortedList.Skip(pageSize*(pageNumber - 1)).Take(pageSize).ToList();

现在我要做的就是那个。导航时,我想使用linq重新加载页面,并根据日期从数据库中获取接下来的20个日志。 它应该看起来像这样

DROP TABLE IF EXISTS user_roles;
DROP TABLE IF EXISTS contacts;
DROP TABLE IF EXISTS users;

CREATE TABLE IF NOT EXISTS users
(
  id         INTEGER AUTO_INCREMENT,
  login      VARCHAR(45) NOT NULL,
  password   VARCHAR(45) NOT NULL,
  full_name VARCHAR(100) NOT NULL,
  PRIMARY KEY (id)
);
CREATE UNIQUE INDEX users_unique_login_idx ON users (login);

CREATE TABLE IF NOT EXISTS user_roles
(
  user_id INTEGER NOT NULL,
  role    VARCHAR(45),
  CONSTRAINT user_roles_idx UNIQUE (user_id, role),
  FOREIGN KEY (user_id) REFERENCES users (id) ON DELETE CASCADE
);

CREATE TABLE IF NOT EXISTS contacts (
  id          INTEGER AUTO_INCREMENT,
  user_id     INTEGER NOT NULL,
  first_name VARCHAR(45) NOT NULL,
  last_name VARCHAR(45) NOT NULL,
  patronymic VARCHAR(45) NOT NULL,
  mobile_phone_number VARCHAR(15),
  home_phone_number VARCHAR(15),
  address VARCHAR(45),
  email VARCHAR(30),
  PRIMARY KEY (id),
  FOREIGN KEY (user_id) REFERENCES users (id) ON DELETE CASCADE
);
CREATE UNIQUE INDEX unique_idx ON contacts (user_id);

我如何使用linq和我的html导航栏来执行此操作?

1 个答案:

答案 0 :(得分:0)

尝试使用PageListPager标记帮助程序,它是PageList库的一部分,可以通过Nuget将其添加到MVC项目中。这是GitHub页面。