【前言】

上一篇完成了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第一个功能增加的更多相关文章

  1. ASP.NET Core2基于RabbitMQ对Web前端实现推送功能

    在我们很多的Web应用中会遇到需要从后端将指定的数据或消息实时推送到前端,通常的做法是前端写个脚本定时到后端获取,或者借助WebSocket技术实现前后端实时通讯.因定时刷新的方法弊端很多(已不再采用 ...

  2. 【3】Asp.Net Core2.2新版管道处理模型

    [前言] 上一篇完成了Asp.Net Core 2.2项目的一个最简单功能的添加,从控制器-视图-实体轻松交互了一下,感觉跟之前的MVC没啥差别!但这些都是在组件封装的基础上完成的,在Core里面,其 ...

  3. 在asp.net core2.1中添加中间件以扩展Swashbuckle.AspNetCore3.0支持简单的文档访问权限控制

    Swashbuckle.AspNetCore3.0 介绍 一个使用 ASP.NET Core 构建的 API 的 Swagger 工具.直接从您的路由,控制器和模型生成漂亮的 API 文档,包括用于探 ...

  4. 【1】Asp.Net Core2.2从环境配置到应用建立

    作者:Eleven 来源:公众号[软谋net] [前言] .Net Core开源&跨平台,已经肉眼可见将成为.Net平台的未来,在企业招聘需求上已经频频见到,接触到很多公司内部都已经开始尝试C ...

  5. ASP.Net Core2.1中的HttpClientFactory系列一:HttpClient的缺陷

    引言: ASP.NET Core2.1 中出现了一个新的 HttpClientFactory 功能, 它有助于解决开发人员在使用 HttpClient 实例从其应用程序中访问外部 web 资源时可能遇 ...

  6. 【翻译】asp.net core2.1认证和授权解密

    asp.net core2.1认证和授权解密 本篇文章翻译自:https://digitalmccullough.com/posts/aspnetcore-auth-system-demystifie ...

  7. ASP.NET Core2读写InfluxDB时序数据库

    在我们很多应用中会遇到有一种基于一系列时间的数据需要处理,通过时间的顺序可以将这些数据点连成线,再通过数据统计后可以做成多纬度的报表,也可通过机器学习来实现数据的预测告警.而时序数据库就是用于存放管理 ...

  8. asp.net core2.1认证和授权解密

    来源:https://www.cnblogs.com/pangjianxin/p/9372562.html asp.net core2.1认证和授权解密 本篇文章翻译自:https://digital ...

  9. Asp.Net MVC页面静态化功能实现一:利用IHttpModule和ResultFilter

    由于公司现在所采用的是一套CMS内容管理系统的框架,所以最近项目中有一个需求提到要求实现页面静态化的功能.在网上查询了一些资料和文献,最后采用的是小尾鱼的池塘提供的 利用ResultFilter实现a ...

随机推荐

  1. Python+Appium 获取 toast 文本值方法的封装

    获取toast内容方法封装如下: def get_Toast(self,message): #查找toast值 ''' method explain:查找toast的值,与find_Toast实现方法 ...

  2. java日志文件用法总结

    1.基本概念 日志门面(接口):commons logging ; slf4j ; 日志具体实现:log4j ; logback(Spring 系列在使用) ; log4j2(添加了异步logger的 ...

  3. 使用Java实现二叉树的添加,删除,获取以及遍历

    一段来自百度百科的对二叉树的解释: 在计算机科学中,二叉树是每个结点最多有两个子树的树结构.通常子树被称作“左子树”(left subtree)和“右子树”(right subtree).二叉树常被用 ...

  4. python接口自动化(二十五)--unittest断言——下(详解)

    简介 本篇还是回归到我们最初始的话题,想必大家都忘记了,没关系看这里:传送门  没错最初的话题就是登录,由于博客园的登录机制改变了,本篇以我找到的开源免费的登录API为案例,结合 unittest 框 ...

  5. 【Android】自己动手做个扫雷游戏

    1. 游戏规则 扫雷是玩法极其简单的小游戏,点击玩家认为不存在雷的区域,标记出全部地雷所在的区域,即可获得胜利.当点击不包含雷的块的时候,可能它底下存在一个数,也可能是一个空白块.当点击中有数字的块时 ...

  6. jdk源码阅读笔记-String

    本人自学java两年,有幸初入这个行业,所以功力尚浅,本着学习与交流的态度写一些学习随笔,什么错误的地方,热烈地希望园友们提出来,我们共同进步!这是我入园写的第一篇文章,写得可能会很乱. 一.什么是S ...

  7. 【HADOOP】| 环境搭建:从零开始搭建hadoop大数据平台(单机/伪分布式)-下

    因篇幅过长,故分为两节,上节主要说明hadoop运行环境和必须的基础软件,包括VMware虚拟机软件的说明安装.Xmanager5管理软件以及CentOS操作系统的安装和基本网络配置.具体请参看: [ ...

  8. SpringBoot之旅第二篇-配置

    一.引言 虽然springboot帮我们进行了自动配置,但配置还是不可避免的,比如最简单的端口号,数据库连接.但springboot的配置一般不用xml进行配置,而是yml和properties,选择 ...

  9. String求求你别秀了

    小鲁班今年计算机专业大四了,在学校可学了不少软件开发的东西,也自学了一些JAVA的后台框架,踌躇满志,一心想着找个好单位实习.当投递了无数份简历后,终于收到了一个公司发来的面试通知,小鲁班欣喜若狂. ...

  10. CSS fixed 定位元素失效的问题

    一个示例 考察下面的代码: <head> <title>css filter issue</title> <style> body { height: ...