C# Dapper基本三层架构使用 (四、Web UI层)
三层架构的好处,一套代码无论WinForm还是Web都可以通用,只写前台逻辑就可以了,现在展示Web调用三层的示例
首先在项目中创建一个Web MVC5项目,目前项目目录如下

在Web项目Web.config中增加数据库连接
<connectionStrings>
<add name="con" connectionString="Data Source=127.0.0.1;Initial Catalog=Northwind;User ID=sa;Password=******;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False"/>
</connectionStrings>
然后增加项目类库引用

扩展DAL增加查询所有数据的方法
public static List<Region> GetAll()
{
using (IDbConnection conn = new SqlConnection(connStr))
{
string sql = "SELECT r.RegionID, r.RegionDescription FROM Region AS r";
IEnumerable<Region> regions = conn.Query<Region>(sql);
return regions.ToList();
}
}
在BLL中增加调用DAL中的GetALL方法
public static List<Model.Region> GetALLRegion()
{
return DAL.RegionService.GetAll();
}
在Web Home控制器中添加引用
using Northwind.BLL;
using Northwind.Model;
修改Index方法中添加如下获取实体类的方法,传递到View视图中
public ActionResult Index()
{
List<Region> regions = new List<Region>();
regions = RegionManger.GetALLRegion();
return View(regions);
}
修改Index视图为以下代码
@model IEnumerable<Northwind.Model.Region> <table class="table">
<caption>Region</caption>
<thead>
<tr>
<th>RegionID</th>
<th>RegionDescription</th>
</tr>
</thead>
<tbody>
@foreach (var item in Model)
{
<tr>
<td>@Html.DisplayFor(modelitem => item.RegionID)</td>
<td>@Html.DisplayFor(modelitem => item.RegionDescription)</td>
</tr>
}
</tbody>
</table>
展示效果

C# Dapper基本三层架构使用 (四、Web UI层)的更多相关文章
- Net系列框架-Dapper+简单三层架构
		
Net系列框架-Dapper+简单三层架构 工作将近6年多了,工作中也陆陆续续学习和搭建了不少的框架,后续将按由浅入深的方式,整理出一些框架源码,所有框架源码本人都亲自调试通过,如果有问题,欢迎联系我 ...
 - MVC项目实践,在三层架构下实现SportsStore-02,DbSession层、BLL层
		
SportsStore是<精通ASP.NET MVC3框架(第三版)>中演示的MVC项目,在该项目中涵盖了MVC的众多方面,包括:使用DI容器.URL优化.导航.分页.购物车.订单.产品管 ...
 - C# Dapper基本三层架构使用 (一、架构关系)
		
Dapper是一款轻量级ORM工具.如果你在小的项目中,使用Entity Framework.NHibernate 来处理大数据访问及关系映射,未免有点杀鸡用牛刀.你又觉得ORM省时省力,这时Dapp ...
 - 数往知来 三层架构 <十四>
		
三层架构_1 一.三层 就是把程序的各个部分都分离,尽量的底耦合,做到分工明确.责任明确 第一层:Dal 数据访问层 第二层 :Bll 业务逻辑判断层 第三层: UI 界面显示层 比如说数据 ...
 - C# Dapper基本三层架构使用 (三、DAL)
		
数据访问层(DAL),主要是存放对数据类的访问,即对数据库的添加.删除.修改.更新等基本操作 首先需要在UI层App.Config配置文件中增加连接字符串,如下所示 <connectionStr ...
 - IFC数据模式架构的四个概念层详解说明
		
IFC模型体系结构由四个层次构成,从下到上依次是 资源层(Resource Layer).核心层(Core Layer).交互层(Interoperability Layer).领域层(Domain ...
 - C# Dapper基本三层架构使用 (四、WinForm UI层)
		
UI层主要功能是显示数据和接受传输用户的数据,可以在为网站的系统运行提供交互式操作界面,表示层的应用方式比较常见,例如Windows窗体和Web页面. 在项目中增加WinForm应用程序,结构如下 添 ...
 - C# Dapper基本三层架构使用 (三、BLL)
		
BLL层介绍 业务逻辑层用于做一些有效性验证的工作,以更好的保证程序运行的健壮性.如完成数据添加.修改和查询业务等:不允许指定的文本框中输入空字符串,数据格式是否正确以及数据类型验证:用户权限的合法性 ...
 - C# Dapper基本三层架构使用 (二、Model)
		
我们将数据存放在数据库中,数据表的结构,我们通常会用一个类来抽象,表的属性就是类的属性,我们通常将表的一行存储在一个类中. 在Java中,通常将其称为实体类Entity,在C#中,通常将其称为Mode ...
 
随机推荐
- Netty入门(三):EventLoop
			
前言 Netty系列索引: 1.Netty入门(一):ByteBuf 2.Netty入门(二):Channel IO相关: 1.Java基础(一):I/O多路复用模型及Linux中的应用 上文提到,早 ...
 - [CISCN2019 华北赛区 Day2 Web1]Hack World(二分法写布尔注入脚本)
			
记一道布尔注入的题,存在过滤字符. 从题目看应该是一道注入题.提示存在flag表flag列. 输入1和2的返回结果不一样,可能是布尔注入. 简单用万能密码尝试了一下.提示SQL Injection C ...
 - Flutter集成高德定位和地图功能
			
定位集成 配置高德定位依赖库 新建 Flutter 项目,使用 Android Studio 打开项目里的 android 工程,或者右键 android 目录-> flutter -> ...
 - Markdown常用的格式
			
一级标题 Markdown # Markdown 二级标题 Markdown ## Markdown 三级标题 Markdown ### Markdown 四级标题 Markdown #### Mar ...
 - DVWA-全等级暴力破解
			
之前写了dvwa的sql注入的模块,现在写一下DVWA的其他实验步骤: 环境搭建参考:https://www.freebuf.com/sectool/102661.html DVWA简介 DVWA(D ...
 - VsCode安装使用教程和插件安装方法
			
许多渗透方式都python写脚本,比较方便,写一下vscode和插件的安装办法,虽然不是很复杂,但是写一下做一下笔记: Visual Studio Code (简称 VS Code / VSC) 是一 ...
 - 对象池在 .NET (Core)中的应用[1]: 编程体验
			
借助于有效的自动化垃圾回收机制,.NET让开发人员不在关心对象的生命周期,但实际上很多性能问题都来源于GC.并不说.NET的GC有什么问题,而是对象生命周期的跟踪和管理本身是需要成本的,不论交给应用还 ...
 - SSM自学笔记(三)
			
5.Spring JdbcTemplate 1.Spring JdbcTemplate基本使用 1.1 JdbcTemplate概述 它是spring框架中提供的一个对象,是对原始繁琐的Jdbc AP ...
 - 使用Postman测试 参数为实体类
			
Body-->raw-->json
 - 【linux】tail 命令详解
			
转自:https://www.cnblogs.com/fps2tao/p/7698224.html Linux命令:显示文件结尾 Head/Tail head 与 tail 就像它的名字一样的浅显易懂 ...