【2】Asp.Net Core2.2第一个功能增加
【前言】
上一篇完成了Asp.Net Core 2.2项目的建立,解释了一番项目结构,这一篇开始动手写个小功能,从Controller-Action-Model-View,完成前后端最基础的交互过程,一起来试试最简单的MVC开发吧!这个可能有一些小坑。
1【Model】
Model是为了数据的传递而定义的实体类,这个对小伙伴儿们应该是非常熟练了,这里Eleven就简单定义一个CurrentUser类。

2【控制器】
项目的基本结构就是Controllers-Models-Views,先从控制器开始。这里右键的时候,没有那个直接添加控制器的选项了,只能添加新建项,然后选择控制器类。

得到的东西很眼熟,跟以前的差别就是Action的返回值从ActionResult换成了IActionResult,其实也没啥变化了。下面将分别尝试几种MVC前后台传值方式:
1 ViewData字典传值

2 ViewBag动态类型传值

3 TempData字典传值(基于session保存的)

4 model传值

3【视图】
这里的视图文件不会自动创建了,需要我们手动去Views下面,创建First文件夹,然后添加新建项,选择Razor视图。创建的cshtml,也是支持Razor语法,使用方式跟MVC5完全一致。

浏览一下,发现数据就都绑定成功了。挺轻松的就完成了数据从后台传递到界面然后进行绑定的过程了,SoEasy!这里跟之前的MVC是一致的,几乎没有什么区别!为什么说是几乎呢,小伙伴儿们可以自己试试,将页面后台跳转一下,会发现一个奇怪的问题,就是那个TempData也失效了。但是在MVC年代,TempData在后台跳转是可以保存数据的,因为是存在Session里面的,在Core里面,默认Session是没有的,如果需要使用Session,需要在Startup的两个方法里面分别配置才行的。这里就不演示了,后文还会继续!
【结语】
Asp.Net Core的第一个简单功能,我们轻松完成了数据的后台传递到前端并完成绑定,还是熟悉的传值,还是熟悉的绑定!但是其中也会埋下一些小坑,在后续的开发过程中,我们将陆续遇到并解决掉。看完这篇文章,大家对迁移以前的MVC项目到Core里面,是不是更有信心了?其实也没这么简单,下一篇文章中,Eleven将带大家去分析框架和扩展订制了!欢迎关注公众号,欢迎讨论,欢迎转发,愿天下有需求的人都能看到!
作者:Eleven
来源:公众号【软谋net】
想了解更多干货,欢迎关注公众号【程序员在职场】

程序员在职场
【2】Asp.Net Core2.2第一个功能增加的更多相关文章
- ASP.NET Core2基于RabbitMQ对Web前端实现推送功能
在我们很多的Web应用中会遇到需要从后端将指定的数据或消息实时推送到前端,通常的做法是前端写个脚本定时到后端获取,或者借助WebSocket技术实现前后端实时通讯.因定时刷新的方法弊端很多(已不再采用 ...
- 【3】Asp.Net Core2.2新版管道处理模型
[前言] 上一篇完成了Asp.Net Core 2.2项目的一个最简单功能的添加,从控制器-视图-实体轻松交互了一下,感觉跟之前的MVC没啥差别!但这些都是在组件封装的基础上完成的,在Core里面,其 ...
- 在asp.net core2.1中添加中间件以扩展Swashbuckle.AspNetCore3.0支持简单的文档访问权限控制
Swashbuckle.AspNetCore3.0 介绍 一个使用 ASP.NET Core 构建的 API 的 Swagger 工具.直接从您的路由,控制器和模型生成漂亮的 API 文档,包括用于探 ...
- 【1】Asp.Net Core2.2从环境配置到应用建立
作者:Eleven 来源:公众号[软谋net] [前言] .Net Core开源&跨平台,已经肉眼可见将成为.Net平台的未来,在企业招聘需求上已经频频见到,接触到很多公司内部都已经开始尝试C ...
- ASP.Net Core2.1中的HttpClientFactory系列一:HttpClient的缺陷
引言: ASP.NET Core2.1 中出现了一个新的 HttpClientFactory 功能, 它有助于解决开发人员在使用 HttpClient 实例从其应用程序中访问外部 web 资源时可能遇 ...
- 【翻译】asp.net core2.1认证和授权解密
asp.net core2.1认证和授权解密 本篇文章翻译自:https://digitalmccullough.com/posts/aspnetcore-auth-system-demystifie ...
- ASP.NET Core2读写InfluxDB时序数据库
在我们很多应用中会遇到有一种基于一系列时间的数据需要处理,通过时间的顺序可以将这些数据点连成线,再通过数据统计后可以做成多纬度的报表,也可通过机器学习来实现数据的预测告警.而时序数据库就是用于存放管理 ...
- asp.net core2.1认证和授权解密
来源:https://www.cnblogs.com/pangjianxin/p/9372562.html asp.net core2.1认证和授权解密 本篇文章翻译自:https://digital ...
- Asp.Net MVC页面静态化功能实现一:利用IHttpModule和ResultFilter
由于公司现在所采用的是一套CMS内容管理系统的框架,所以最近项目中有一个需求提到要求实现页面静态化的功能.在网上查询了一些资料和文献,最后采用的是小尾鱼的池塘提供的 利用ResultFilter实现a ...
随机推荐
- java基于BasicPlayer调用 播放音乐
无聊中想想用java调用下听音乐的api.晚上很多文章用的比较老大方法了,都是用原生的代码写,而且不支持mp3格式,BasicPlayer第三方包提供了很好的api调用,简单的3行代码就可以调用mp3 ...
- 434个H5游戏源码
各种类型HTML5游戏,界面和JS均可供项目参考 下面是下载地址
- mybatis入门系列三之类型转换器
mybatis入门系列三之类型转换器 类型转换器介绍 mybatis作为一个ORM框架,要求java中的对象与数据库中的表记录应该对应 因此java类名-数据库表名,java类属性名-数据库表字段名, ...
- jdk源码阅读笔记-HashMap
文章出处:[noblogs-it技术博客网站]的博客:jdk1.8源码分析 在Java语言中使用的最多的数据结构大概右两种,第一种是数组,比如Array,ArrayList,第二种链表,比如Array ...
- PHP 技能精进之 PHP-FPM 多进程模型
PHP-FPM 提供了更好的 PHP 进程管理方式,可以有效控制内存和进程.可以平滑重载PHP配置.那么当我们谈论 PHP-FPM 多进程模型的时候,作为 PHPer 的你了解多少呢? 首先,让我们一 ...
- 实现AutoMapper(1.0版本)
最近有个需求就是实体之间自动转换,网上肯定有很多现成的实现,不过还是自己写了一个,就当对java高级特性的一个熟悉的过程.这中间包含了泛型,反射,lamada表达式.对于想了解java高级特性的人来说 ...
- JavaSE:关键字(全)
访问控制: private 访问控制方式:私有的 protected 访问控制方式:受保护的 public 访问控制方式:公共的 类.方法和变量修饰符: abstract 声明抽象,表明类或者成员方法 ...
- 使用工厂模式解耦和IoC思想
使用工厂模式解耦. 一.需求场景: 某一层功能需要改动,但其他层代码不变 实现类1:MyDaoImpl查询自己的数据库. ====改为====> 实现类2:MyDaoImpl2从其它地址得到数据 ...
- <pre>标签:\r\n换行符的保留
mysql数据读库的\r\n换行符处理 这个问题是我在采集数据时发现的,采集网页的数据,大概有6千多条,采集的内容保留了最原始的\r\n和\n换行字符,但在mysql管理工具中(phpmyadmin和 ...
- 用samba来创建windows下的文件共享
前言 Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件,而SMB是Server Message Block的缩写,即为服务器消息块 ,SMB主要是作为Microsoft的网络 ...