本文是本系列文章第一篇,主要通过建立一个默认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. Wireshark使用入门

    目录 1. Wireshark介绍 1.1 客户端界面 1.2 Display Filter 的常用方法 1.3 界面上一些小TIPS 2. 使用Wireshark分析TCP三次握手过程 2.1 三次 ...

  2. JAVA 运行springboot jar包设置classpath

    Java 命令行提供了如何扩展bootStrap 级别class的简单方法. -Xbootclasspath: 完全取代基本核心的Java class 搜索路径.不常用,否则要重新写所有Java 核心 ...

  3. IDEA不能读取配置文件,springboot配置文件无效、IDEA resources文件夹指定

  4. vs2017离线包下载安装并且不占用C盘空间使用教程

    安装vs2017,前提是你的环境是.NET4.6,VS2017在下载好安装程序安装的时候,会根据你选择的功能模块来下载所需要的安装程序,微软.安卓和苹果等平台的SDK.模拟器和第三方扩展功能等会在用户 ...

  5. 第五篇 openvslam建图与优化模块梳理

    建图模块 mapping_module在初始化系统的时候进行实例化,在构建实例的时候会实例化local_map_cleaner和local_bundle_adjuster.系统启动的时候会在另外一个线 ...

  6. Lucene的全文检索学习

    Lucene的官方网站(Apache的顶级项目):http://lucene.apache.org/ 1.什么是Lucene? Lucene 是 apache 软件基金会的一个子项目,由 Doug C ...

  7. @Valid 数据校验 + 自定义全局异常信息

    关于javax.validation.Validator校验的使用 对于要校验的实体类:其需要校验的字段上需要添加注解 实际例子 使用:首先要拿到 validator的子类 Validator val ...

  8. 面试阿里百分百问的Jvm,别问有没有必要学,真的很有必要朋友

    面试阿里百分百问的Jvm,别问有没有必要学,真的很有必要朋友 前言: JVM 的内存模型和 JVM 的垃圾回收机制一直是 Java 业内从业者绕不开的话题(实际调优.面试)JVM是java中很重要的一 ...

  9. Error: Opening Robot Framework log failed on mac jenkins

    For resolve your problem you must : Connect on your jenkins url (http://[IP]:8080/) Click on Manage ...

  10. animations与transition

    transition过渡 和animation 动画 要知道 transition过渡和animation动画都是实现元素运动的一种方式.区别在于: transition过渡需要人为触发,例如点击触发 ...