• ASP.NET入门经典


    快速导航

    第二章 创建ASP.NET应用程序

    2.1 使用Visual Studio创建Web站点

    2.1.1 可用项目类型

    创建在线访问的Web站点时,可以使用两种类型的项目:Web站点和Web应用程序。在VS2015里,创建Web Site和Web Application不同,而且两种方法之间的差异也很大。

    VS2019创建网站

    创建WebSite的方式并不是一个管理和部署Web站点的企业级方案。.aspx标记文件被复制到服务器上,在请求时被调用。.aspx.cs这样的CodeBehind文件直接在服务器上进行编译,不需要在服务器上安装特定的运行程序,并且在第一次调用时被保存为.dll文件。

    因为编译是在运行时完成的,所以项目中不需要项目文件。想让Web站点跑起来,只需要把整个站点文件夹拷贝到IIS上即可,也可以直接在站点里添加删除文件,没有任何影响。

    但这种方式不适用于ASP.NET MVC应用,因为MVC应用需要完整编译。

    2.1.2 创建Web Application

    VS2019

    注意"添加文件夹和核心引用"选项,将会决定项目的文件目录。你也可以勾选上生成"单元测试"任务。如果你安装了Azure支持,还可以选择"部署到Microsoft Azure"。

    2.1.2.1 同时创建文件
    2.1.2.1.1 身份验证

    身份验证

    为Web应用程序配置安全性和身份验证很重要,可以使用SQLServer数据库来管理用户,也可以使用其他方法。第15章将介绍应用程序配置,第19章将介绍服务器配置,以确保支持与应用程序相同的身份验证方法。

    2.1.2.1.2 文件夹和核心引用

    配置新建项目过程中选择希望添加的额外的文件夹和核心引用,仅仅只会创建文件夹结构和默认文件,但不会影响你到选择的模板。譬如你选择了以Web Forms模板来创建Web项目,同时又在"添加文件夹和核心引用里"勾选了"MVC",就会自动创建所有MVC文件夹,但是其中没有内容。

    2.1.2.2 空模板

    假如啥也不选,空模板就一个Web.Config文件。

    2.1.2.3 Web Forms模板

    Web Forms

    会创建带有个几个示例文件的Web站点。

    2.1.2.4 MVC模板

    MVC

    会创建一个小功能集,包含与Web Forms模板相同的主页、关于页面以及一个联系人页面。运行结果是一样的,但是目录和文件结构完全不同。

    2.1.2.5 WebAPI模板

    Web API是一个基于ASP.NET MVC的RESTful Web服务。第13章我们将详细讲述。

    尽管RESTful服务的概念意味着没有HTML文件来支持,但这个模板会创建两个页面:主页和API页面。API页面是文档开始,包含Web服务将理解和处理的信息类型。

    2.1.2.6 单页应用程序模板

    单页应用程序

    单页应用程序,顾名思义,就只有一个Web页面。最初会下载HTML和Javascript,然后应用程序运行,其中大部分的工作都是在客户端完成的,数据从服务器获取,通过客户端模版解析。又或者在服务器上直接将完整的HTML片段返回给客户端,根据需要加载页面的各个部分。

    最重要的是,不会再从服务器调用整个页面,而只是调用页面的各部分。

    这种方法利用AJAX技术,使用客户端代码来调用Web服务,以获得信息。

    2.2 Web Application里的文件类型

    通过Web Application来创建ASP.NET应用程序,项目使用的每个文件都会编译到一个.dll文件中,或者作为一个单独的文件复制到Web站点上。

    任何服务器端工作相关的代码都被编译成了.dll,而直接发送到客户端的内容,如Image,Javascript和CSS文件,则保持不变,并复制到服务器的输出文件夹中。当你需要修改设计客户端的功能的时候,无须再次编译项目或者重新进行Web站点的部署。

    再强调一次,Web Forms和MVC的实现不同,所以使用不同的文件类型,存储在不同的目录结构中。

    2.2.1 ASP.NET MVC文件类型

    ASP.NET MVC文件类型

    2.2.2 ASP.NET MVC目录结构

    MVC目录结构

    在Views下有多个与Controller对应的文件夹,只是没有词尾的Controller而已,这是因为控制器可能包含多个视图文件。

    2.2.3 ASP.NET Web Forms文件类型

    Web Forms文件类型

    唯一相同的是.config文件,以及发送给客户端的文件.html.js.css

    2.3 MVC和Web Forms文件的区别

    其实仔细查看的话,会发现它们的相似点比差一点更多。尽管每个文件内容语法不太一样,但每个方法都有两个示例:一个包含标记,另外一个包含处理代码。

    Web Forms里的标记文件和处理文件之间有非常紧密的联系,在解决方案里就可以看出它们相关,因为它们显示在一起。而MVC则不同,它没有在文件之间自动建立一对一的关系,相反,有可能存在多个视图文件对应一个控制器文件的情况。

    2.4 创建MVC和Web Forms并存的示例程序

    • 前面的介绍里你可以看到,Web Forms拥有的目录其实是MVC的一个子集。
    • 在创建Web Application的时候,选择MVC模板作为初始骨架,然后在"添加文件和核心引用"里勾选上Web Forms。
    • 使用这种方式创建不会创建重复的目录或者文件夹,但会同时添加ASP.NET MVC和Web Forms必要的引用DLL。

    2.5 练习

    • VS有两种方法创建基于Web的应用程序,分别是什么?它们有什么区别?
    • 什么是项目模版?
    • ASP.NET MVC比Web Forms相比多了哪几个额外文件夹?分别有什么用处?

    扩展资料

  • 相关阅读:
    微信小程序如何获取openid
    js经典试题之常用的方法
    js经典试题之运算符的优先级
    js如何使浏览器允许脚本异步加载
    es6从零学习(五):Module的语法
    es6从零学习(四):Class的继承
    js如何处理字符串中带有↵字符
    Zuul中聚合Swagger的坑
    阿里Sentinel支持Spring Cloud Gateway啦
    Spring Boot中的Mongodb多数据源扩展
  • 原文地址:https://www.cnblogs.com/zenronphy/p/BeginASPDotNetLearningChapter2.html
Copyright © 2020-2023  润新知