增加显示菜单

Sample.Web.MVC项目中找到startup目录打开SampleNavigationProvider.cs,根据现有内容添加以下内容

.AddItem(
new MenuItemDefinition(
PageNames.Address,
L("Address"),
url: "Address",
icon: "fas fa-address-book"
)
)

打开相同目录的PageNames.cs增加页面名称

public const string Address = "Address";

如果需要多语言环境需要到Sample.core项目下Localization\SourceFiles\Sample-zh-Hans.xml增加一行

<text name="Address">联系人</text>

在Models目录下新建Address目录并添加AddressListViewModel.cs视图模型

using System.Collections.Generic;
using Sample.Northwind.Dto; namespace Sample.Web.Models.Address
{
public class AddressListViewModel
{
public IReadOnlyList<AddressDto> Address { get; set; }
}
}

在MVC项目中增加Address控制器

using System.Threading.Tasks;
using Sample.Controllers;
using Sample.Northwind;
using Sample.Web.Models.Address;
using Microsoft.AspNetCore.Mvc; namespace Sample.Web.Controllers
{
public class AddressController : SampleControllerBase
{
private readonly IAddressAppService _addressAppService; public AddressController(IAddressAppService addressAppService)
{
_addressAppService = addressAppService;
}
public async Task<ActionResult> Index()
{
var result = (await _addressAppService.GetAllAsync()).Items;
var model = new AddressListViewModel()
{
Address = result
};
return View(model);
}
}
}

添加视图

@model Sample.Web.Models.Address.AddressListViewModel
@{
ViewData["Title"] = "Index";
} <div class="content-header">
<div class="container-fluid">
<div class="row">
<div class="col-sm-12">
<h1 class="m-0 text-dark">@L("Address")</h1>
</div>
</div>
</div>
</div>
<div class="content">
<div class="container-fluid">
<div class="row">
<div class="col-lg-12">
<div class="card">
<div class="card-body">
<table class="table table-bordered">
<tr>
<th>编号</th>
<th>姓名</th>
<th>邮箱</th>
</tr>
@foreach (var item in Model.Address)
{
<tr>
<td>@item.Id</td>
<td>@item.Name</td>
<td>@item.Email</td>
</tr>
}
</table>
</div>
</div>
</div>
</div>
</div>
</div>

显示效果如下

ABP 极简入门教程(二 MVC方式显示数据)的更多相关文章

  1. ABP 极简入门教程(一)

    本示例不讲概念,只讲怎么用,概念性的内容没有比官方文档更清楚的了,我也正在学习,可能理解的地方有不对的欢迎一起交流,但需要您了解以下内容才能看明白 asp.net core Entity Framew ...

  2. ABP 极简入门教程(三 权限)

    此处演示为MVC项目,同样权限定义需要到Application中才能在获取API时进行权限验证 一.打开Sample.Core\Authorization\PermissionNames.cs增加授权 ...

  3. Git 极简入门教程学习笔记

    Git 极简入门教程  http://rogerdudler.github.io/git-guide/index.zh.html 测试用 https://github.com/xxx/BrnShop. ...

  4. Nginx 极简入门教程!

    上篇文章和大家聊了 Spring Session 实现 Session 共享的问题,有的小伙伴看了后表示对 Nginx 还是很懵,因此有了这篇文章,算是一个 Nginx 扫盲入门吧! 基本介绍 Ngi ...

  5. 小白的docker极简入门(二)、5分钟教你玩转docker安装

    0-前言 上一篇中,我们已经安装后Linux了,我们需要在Linux下安装docker,然后才能在docker中安装和部署各种应用 同样,5分钟教你完成docker正确安装和使用, 不是纸上谈兵,不是 ...

  6. Nginx 极简入门教程!(转)

    基本介绍 Nginx 是一个高性能的 HTTP 和反向代理 web 服务器,同时也提供了 IMAP/POP3/SMTP 服务. Nginx 是由伊戈尔·赛索耶夫为俄罗斯访问量第二的 Rambler.r ...

  7. MVC方式显示数据(数据库)

    新建实体数据模型 选择ADO.NET实体数据模型,名称改为数据库名 因为使用现有数据库,所以选择来自数据库的EF设计器,只演示所以只选择一个表,空模型可后期增加表 选择从数据库更新模型 新建数据库连接 ...

  8. MVC方式显示数据(手动添加数据)

    Model添加类 Customers using System; using System.Collections.Generic; using System.Linq; using System.W ...

  9. ElasticSearch极简入门总结

    一,目录 安装es 项目添加maven依赖 es客户端组件注入到spring容器中 es与mysql表结构对比 索引的删除创建 文档的crud es能快速搜索的核心-倒排索引 基于倒排索引的精确搜索. ...

随机推荐

  1. ElasticSearch进阶检索

    ElasticSearch进阶检索 入门检索中讲了如何导入elastic提供的样本测试数据,下面我们用这些数据进一步检索 一.SearchAPI ES 支持两种基本方式检索 : 1.一种是通过使用 R ...

  2. UE4点选源码分析

    在UE插件开发中,时常会用到场景预览窗口的功能,也经常会有点选场景里的物体而同步改变工具界面的需求,网上教程多为讲解如何打开一个预览界面.在最近的一次需求开发中,我粗读了关卡编辑器和蓝图编辑器的Vie ...

  3. C++ //虚析构和纯虚析构

    1 //虚析构和纯虚析构 2 3 #include <iostream> 4 #include <string> 5 using namespace std; 6 7 clas ...

  4. .NET Core/.NET5/.NET6 开源项目汇总12:WPF组件库2

    系列目录     [已更新最新开发文章,点击查看详细] WPF(Windows Presentation Foundation)是微软推出的基于Windows 的用户界面框架,属于.NET Frame ...

  5. 使用VNC远程安装CentOS 7操作系统

    使用VNC远程安装CentOS 7操作系统 by 无若 数据中心一般都不在本地,如果希望重新安装系统,难道还要跑到数据中心...所以必须要有一种方式来远程解决这个问题. 目前CentOS 7主要使用的 ...

  6. Mysql5.7.34 数据库源码编译安装

    Mysql 数据库源码编译安装 MySQL是一个关系型数据库管理系统,关系型数据库是将数据保存在不同的表中,而非将所有数据放在一个大仓库内,这样就加快了速度并提高了灵活性.由于其体积小.速度快.总体拥 ...

  7. 计算机网络 中国大学MOOC 哈尔滨工业大学 习题答案

    转自 https://blog.csdn.net/qq_37514135/article/details/82733651 计算机网络作业题 第一章 第一题 如图所示网络.A在t=0时刻开始向C发送一 ...

  8. QZHWTEST2021.5.23分析

    树上游戏 题面 题目描述 \(FLY\)和朋友玩一个游戏. 在一棵树上,每个点都有一个点权,\(FLY\)和朋友从根开始,轮流取出点权作为分值,并且由当前玩家选择前往哪一个儿子,直到到达叶子节点后计算 ...

  9. WinForm嵌入Web网页的解决方案

    企业级信息化系统绝大部分采用BS架构实现,如门户网站.OA系统.电商网站等,通过浏览器输入Web网址即可访问,对于使用者来说非常便捷,对于开发维护者来说也非常方便,程序维护只需更新服务器即可,使用者无 ...

  10. Quartz任务调度(4)JobListener分版本超详细解析

    JobListener 我们的jobListener实现类必须实现其以下方法: 方法 说明 getName() getName() 方法返回一个字符串用以说明 JobListener 的名称.对于注册 ...