本文是本系列文章第一篇,主要通过建立一个默认ASP.NET MVC项目来引出与ASP.NET MVC相关的功能,由于ASP.NET MVC一个简单的模板就具备了数据库操作、身份验证、输入数据校验等功能,所以本系列文章将这些功能看作“魔法”来一一介绍。

  本文从以下几个方面来进行讲诉:

  ● 为什么写这一系列文章
  ● 用VS2017创建一个ASP.NET MVC应用
  ● 项目的运行与效果展示

为什么写这一系列文章?

  •   本系列文章基于ASP.NET MVC,在ASP.NET Core已经发布2.0版本,微服务漫天的今天为什么还写ASP.NET?。

  答:虽然现在已经有ASP.NET Core并且以微服务架构为主流,但是在生产上仍然存有很多用ASP.NET开发应用程序,所以对于维护来说ASP.NET也是很重要的,另外ASP.NET Core毕竟很多东西仍然是基于ASP.NET的思想的,理解ASP.NET再去学习Core会事半功倍,另外使用一项技术开发应用程序,并不是所有的业务都适合微服务架构,况且微服务不仅仅只是开发服务,它对开发和运维都有很大的要求,所以MVC这种单体程序仍旧有存在的意义(ASP.NET Core中也有MVC)。

  •   网络中已经有很多很好的ASP.NET MVC的教程,为什么还要写?

  答:首先网络上的东西个人觉得比较零碎,介绍MVC的都在介绍MVC、介绍EF的都介绍EF,但是一个应用程序的开发实际上包含了很多东西,不仅仅是技术还包括管理(注:虽然本系列文章也只讲技术...)。所以本系列文章以开发一个博客应用为例,介绍使用ASP.NET MVC开发的过程中遇到的内容如EF、Identity等组件以及ASP.NET MVC本身。

  更重要的是写文章能够更深入的了解自己对ASP.NET的了解,找到问题提升自己,望这些东西对大家有所帮助。

用Visual Studio 2017创建一个ASP.NET MVC应用程序。

  Visual Studio 2017是微软公司开发的非常强大的开发工具,它也是.Net开发人员的首选IDE。

  下载地址:https://www.visualstudio.com/zh-hans/

  本文将介绍如何使用VS2017快速开发一个ASP.NET MVC应用。

创建一个ASP.NET MVC 项目

  1. 打开VS2017,通过菜单创建一个项目:

  

   2. 在项目模板中找到Web下的ASP.NET Web Application(.NET Framework)选中并修改项目名称和创建路径等信息点击“OK”创建项目。(注:不使用ASP.NET Core)

  

  3. 将Web应用程序的类型选择为MVC,身份验证使用独立用户验证,点击“OK”完成项目创建。

  

  修改身份验证方式:

  

  4. 项目文件结构:

  

运行项目

  1. 选择“Debug”模式,点击运行按钮,启动程序:

  

    2. 首页效果:

  

  3. 用户注册与输入信息验证(首次注册需要等待一段时间,因为会创建数据库):

  

  4. 用户登录:

  

  登录成功:

  

  注:注册的用户是存储在数据库中的,所以重启应用数据也不会丢失。下面是通过VS2017的服务器窗口添加数据库文件连接并查看数据的方法:

  1. 添加一个SQL Server数据库文件连接。

  

  2. 指定文件路径:

  

  3. 查看数据:

  

ASP.NET 中的魔法?

  本系列文章以“ASP.NET没有魔法”为题是因为。从上面例子可以看出,简单的通过VS就可以创建出一个功能全面的MVC Web应用,它不仅包含了数据库操作和用户身份验证,还实现了用户输入验证(前端验证和后端验证)。微软的Getting Started文档中介绍了如何使用ASP.NET MVC来开发应用程序,在代码层还有更多的东西如路由的机制是什么?模型是怎么绑定验证的?静态内容是如何处理的?数据库是怎么访问到的?页面是如何渲染的?等等,都是无法通过一个例子来说明,本系列文章将这一系列看作“魔法”,通过解释这些“魔法”来理解ASP.NET程序是如何运行的。

参考:

  https://docs.microsoft.com/en-us/aspnet/mvc/overview/getting-started/introduction/getting-started

欢迎添加个人微信号:Like若所思。

欢迎关注我的公众号,不仅为你推荐最新的博文,还有更多惊喜和资源在等着你!一起学习共同进步!

ASP.NET开发实战——(一)开篇-用VS创建一个ASP.NET Web程序的更多相关文章

  1. ASP.NET没有魔法——开篇-用VS创建一个ASP.NET Web程序

    为什么写这一系列文章? 本系列文章基于ASP.NET MVC,在ASP.NET Core已经发布2.0版本,微服务漫天的今天为什么还写ASP.NET?. 答:虽然现在已经有ASP.NET Core并且 ...

  2. ASP.NET开发实战——(三)第一个ASP.NET应用《MyBlog》

    本文开始通过ASP.NET MVC创建一个博客应用,该应用是通过默认的MVC模板修改而来,所以创建的过程和代码都与默认模板一致,然后通过修改的方式将默认模板改为博客的主页,并添加博客列表.内容等页面. ...

  3. ASP.NET开发实战——(四)ASP.NET MVC是如何运行的?它的生命周期是什么?

    前面的文章我们使用ASP.NET MVC创建了个博客应用,那么它是如何工作的呢?我们都知道ASP.NET的程序需要部署到IIS上才能够通过浏览器来访问,那么IIS与ASP.NET MVC程序之间又是如 ...

  4. 在一个空ASP.NET Web项目上创建一个ASP.NET Web API 2.0应用

    由于ASP.NET Web API具有与ASP.NET MVC类似的编程方式,再加上目前市面上专门介绍ASP.NET Web API 的书籍少之又少(我们看到的相关内容往往是某本介绍ASP.NET M ...

  5. [ASP.NET MVC2 系列] ASP.Net MVC教程之《在15分钟内用ASP.Net MVC创建一个电影数据库应用程序》

    [ASP.NET MVC2 系列]      [ASP.NET MVC2 系列] ASP.Net MVC教程之<在15分钟内用ASP.Net MVC创建一个电影数据库应用程序>       ...

  6. Unity 2D游戏开发高速入门第1章创建一个简单的2D游戏

    Unity 2D游戏开发高速入门第1章创建一个简单的2D游戏 即使是如今,非常多初学游戏开发的同学.在谈到Unity的时候.依旧会觉得Unity仅仅能用于制作3D游戏的. 实际上.Unity在2013 ...

  7. 如何创建一个Asp .Net Web Api项目

    1.点击文件=>新建=>项目 2.创建一个Asp .NET Web项目 3.选择Empty,然后选中下面的MVC和Web Api,也可以直接选择Web Api选项,注意将身份验证设置为无身 ...

  8. ASP.NET开发实战——(九)ASP.NET MVC 与数据库之ORM

    之前的文章中介绍了如何在ASP.NET中通过ADO.NET操作SQL Server和My SQL数据库,数据库的操作是通过SQL语句的执行来完成的,在ASP.NET中还有一个简便的方式来使用数据库,那 ...

  9. ASP.NET开发实战——(八)ASP.NET MVC 与数据库之MySQL

    之前介绍了My Blog如何使用ADO.NET来访问SQL Server获取数据.本章将介绍如何使用My SQL来完成数据管理. 在使用My SQL之前需确保开发环境中安装了My SQL数据库和Con ...

随机推荐

  1. FFT/NTT基础题总结

    在学各种数各种反演之前把以前做的$FFT$/$NTT$的题整理一遍 还请数论$dalao$口下留情 T1快速傅立叶之二 题目中要求求出 $c_k=\sum\limits_{i=k}^{n-1}a_i* ...

  2. Oracle中如何创建数据库

    Oracle数据库的物理结构与MySQL以及SQLServer有着很大的不同.在使用MySQL或SQLServer时,我们不需要去关心它们的逻辑结构和物理结构. 但是在使用Oracle的时候,我们必须 ...

  3. npm和yarn的区别,我们该如何选择?

    首先,这两个都属于js包管理工具,都可以安装包或者模块yarn 是由facebook.google等联合开发推出的区别: npm 下载包的话 比如npm install它是按照包的排序,也就是队列挨个 ...

  4. .NET Core on K8S快速入门课程--学习笔记

    课程链接:http://video.jessetalk.cn/course/explore 良心课程,大家一起来学习哈! 目录 01-介绍K8s是什么 02-为什么要学习k8s 03-如何学习k8s ...

  5. Delphi - 16进制取反 Not

    //Not直接实现十六进制取反var I, J : word; begin I := $96E5; J := Not I; ShowMessage(Format('%x',[J])); end; 作者 ...

  6. U盘安装CentOS 7提示 “Warning: /dev/root does not exist, could not boot” 解决办法

    1.把U盘的Lable(即标签)修改成centos 2.在安装界面上按TAB键,修改启动路径,把”CENTOS\x207\x20x86_64″改成 “centos”

  7. 百度地图分布图(百度地图api司机位置实时定位分布图)

    就类似于我们使用共享单车app的时候,可以看到我们周围的空闲单车分布.e代驾在后台管理系统需求里也有此功能,目的是为了实时看到目标城市下的所有司机状态. 一.controller //controll ...

  8. Kali无法使用Chrome原因及解决方法

      Kali安装好后,默认的浏览器是Firefox-ESR(Extended Support Release 长期支持)版本.   作为Chrome的死忠粉,当然是要下Chrome用用的.   直到我 ...

  9. JSP 与Javabean 的交互技术

    JSP 与Javabean 的交互技术 JavaBean的属性可以是任意类型,并且一个JavaBean可以有多个属性.每个属性通常都需要具有相应的setter. getter方法,setter方法称为 ...

  10. 个人第2次作业:熟悉使用Git工具

    GIT地址 https://github.com/dxg1999 GIT用户名 dxg1999 学号后五位 62317 个人博客 我的博客 作业链接 作业内容 项目作业的整个过程 作业背景 阿超家里的 ...