• 初识.netCore以及如何vs2019创建项目和发布


     一:什么是.netCore

    从图上得知,.NetCore是同.NetFramework一样也是一种框架,并且都是基于.Net Standard Library,前面我们有用过.netFramwork来开发过一些网站,控制台,winform窗体等,那.netCore 同.netFramwork有何异同或者说现在为啥说是.netcore是开发的趋势呢?

    通过有以下几点我们来说明:

    1:.netFramework我们晓得版本从1.0升级到了4.7,然后每个版本都是向前兼容的,所以后面会变得越来越繁重复杂,而且内置了很多了module,处理器等,导致一个简单的功能,必须要经过各种不必要的处理。

    2:.netFramework是依赖于IIS,web是必须要部署到IIS,即宿主服务器必须是windows服务器,没有办法做到跨平台,导致服务器资源有了限制。

    3:.netFramework版本从4.7左右,微软已经停止了维护,就是版本不在做升级了,重新创建了.netCore框架,.netcore比较轻便,灵活;而且自带了一个跨平台的服务器,所以去除了对于IIS的依赖,能够更好的跨平台。

    二:.netCore跟.netFramework简单比较认识

    我们以简单的控制台来对比分析,首先我们创建两个项目,一个是.netFramwork为Test.Framework.Console,一个是.netCore为Test.Core.Project,分别如下:

    对比发现,有以下不同:

    1:.netFramwork对应的dll都放在引用下面,而core对应的dll都放在SDK

    2:framework有app.config是xml,而core是没有的,其实core的配置文件是json文件,在编译生成的时候会看到。

    3:两者都可以NuGet,但是framework的nuGet引用的类都是放在packages.config中,而core是直接放在Nuget文件夹下面的。

    4:查看编译后的bin文件夹发现,framework是直接生成exe直接运行文件,而core是没有的。

    core编译后的文件,然后服务器运行必须命令行启动,可以放在windows或者linux服务器上面:

    framework编译后的文件,然后服务器运行直接点击exe执行程序,但是仅仅是放在windows服务器上面:

    三:在 Visual Studio 2019 中创建新的 ASP.NET Core 项目

    步骤 1:在 Visual Studio 2019 中创建新的 asp.net Core 项目

    步骤 2:在 Visual Studio 中单击**“创建新项目”**。

    第 3 步:在“创建”对话框中,右侧菜单栏“语言”下选择“C#”,然后点击**“ASP.NET Core Web 应用程序”**

    3 2 1

    第 4 步:在配置新项目菜单栏中,键入项目的名称。我将其命名为StudentManagement。 我们将创建一个 asp.net core web 应用程序,在这个程序中,我们将创建、读取、更新、删除学生。

    第 5 步:另外,指定要创建此项目的位置。我将把我的项目放在,路径为,C:Projectssource epos 文件夹中。

    第 6 步:点击创建按钮。

    3 2 2

    第 7 步: 在下一个屏幕上,选择 ASP.NET Core 2.2(可用的最新.NET Core SDK)

     3 2 3

    第 8 步:取消选中“为 HTTPS 配置”复选框 ,如上图所示,关闭身份验证。即一个完整的asp.netcore已经创建完成

    四:创建asp.netcore时,vs会给我们提供一些模板创建,详情见第7步,下面主要介绍这些模板。

    4.1》空:名称暗示的“空”模板不包含任何内容。这是我们将使用的模板,并从头开始手动设置所有内容,以便我们清楚地了解不同部分如何组合在一起。

    4.2》API:此模板包含创建 ASP.NET Core RESTful HTTP 服务所需的一切

    注意:API 不需要所有网站特定的内容,如 JavaScript 文件,CSS 文件,视图文件,布局文件,因为它没有用户界面。Web API 公开的数据通常由其他应用程序使用,可以简单的理解为 程序和程序之间打交道。

    因此,API 模板只会创建Controllers文件夹。它不会创建 Models 和 Views文件夹,因为它们不是 API 所必需的。下面截图显示了我使用 API 模板创建的项目。请注意,我们只有Controllers文件夹。我们没有 RESTful API 不需要的所有 JavaScript,CSS 和布局文件。

    3 2 5

    4.3》Web 应用程序:此模板使用新的用于构建 Web 应用程序的 RazorPages 框架。使用 Razor 页面,编写以页面为中心的场景更容易,更高效。当我们不想要 ASP.NET MVC 的完整复杂性时,我们通常使用这种方法。我们可以将其视为 MVC 框架的更薄版本。我们将在即将发布的视频中详细讨论 RazorPages。

    4.4》Web 应用程序(模型视图控制器):此模板包含创建 Model,视图(Views)和控制器文件夹并添加 Web 特定的内容,如 CSS,JavaScript 文件,布局文件和网站所需的其他资源,也可以基于此模板创建 Restful 风格的 HTTP 服务。

    下面的截图显示了我使用Web应用程序(模型视图控制器)创建的项目。请注意,我们有Modes,Views 和 Controllers 文件夹。在 Views 文件夹中,我们有示例视图文件和布局文件,它们代表 Web 应用程序的用户界面。我们还有 Web 应用程序通常需要的 JavaScript 和 CSS 文件。

    3 2 4

    4.5》Razor 类库(RCL):顾名思义,我们使用此模板创建可复用的 Razor 类库项目。该项目包含所有可复用的用户界面部分,如数据模型,页面模型,控制器,页面,Razor 视图和 View 组件。然后,可以在多个应用程序中复用此 Razor 类库(RCL)项目。任何使用 RCL 的应用程序都可以覆盖它包含的视图和页面。我们将在后面发布的视频中讨论 RCL。

    4.6》Angular,React.js,React.js 和 Redux:这三个模板允许我们与 Angular,React 或 React 和 Redux 一起创建 asp.net Core Web 应用程序。

    五:vs2019如何发布netcore项目

    按照第四条,然后创建了一个Web 应用程序(模型视图控制器)如下:

    现在我们来看一下如何发布:

    1:选中Test.Core.MVC,然后右键选择发布,会弹出如下图,选择文件夹发布,然后选择要发布的文件地址,可以点击高级进行一些设置如下,目标框架可以选择对应的版本,然后目标运行时是可移植:

    2:点击发布,然后再发布的时候会检查是否有编译错误,如果没有问题,会在控制台中输出如下:

    3:打开发布的文件夹E:/wss/publish会得到如下图

     以上几个步骤则完整了整个发布,下面介绍如果把发布的文件部署在IIS上面。

    六:IIS上面部署netcore项目

    1:打开iis,然后选择网站,右键添加:

    注意:物理路径一定要选择对,我之前运行一直是404,发现是物理路径填写有问题,我是直接打开文件夹,然后把地址贴上去的,然后出现跟iis物理路径斜杠不一致,截下图仅供参考:

    2:选择网站上面的【应用程序池】,然后找到Test.Core

    3:选中右键选择基本设置如下图,然后点击确定

     然后浏览器输入http://localhost:8050/(上面截图的端口号有时候为了截图而出现不一致,以实际添加网站的端口号为主)则出现下面页面,至此整个发布完成了。

    注意:之前网上看到很多小伙伴发不完遇到了500.19,这是因为目录访问权限的限制,可以设置一下文件夹的访问权限!

  • 相关阅读:
    ab参数详解 – 压力测试
    configure/make/make install的作用
    LNMP第二部分nginx、php配置
    centos 6.9安装mysql
    HDFS Java API的使用举例
    配置SSH无秘钥登录
    一篇文章学懂Shell脚本
    自己实现一个简单的网购秒杀系统
    hadoop伪分布式环境搭建
    vmware虚拟机的克隆
  • 原文地址:https://www.cnblogs.com/loverwangshan/p/11284169.html
Copyright © 2020-2023  润新知