ASP.NET Core

《ASP.NET Core 3框架揭秘》售后支持

≡放荡痞女 提交于 2020-08-10 05:45:04
欢迎大家加入《ASP.NET Core 3框架揭秘》读者群。入群方式:扫描下方二维码或者搜索微信账号“broadview002”(博文小丸子)并添加为好友,并在申请消息中指定本书书号“38462”,出版社工作人员将自动帮你添加到该微信群。对于在群的朋友们,你也可以邀请感兴趣的人加入。 样章下载: https://pan.baidu.com/s/147VsO1wt9DJi9kuE7Kzngg 提取码 qm7s。 完整目录下载: 上册 、 下册 相关博文系列: https://www.cnblogs.com/artech/p/inside-asp-net-core-3-summary.html 本书提供的实例源代码: https://github.com/jiangjinnan/InsideAspNetCore3 https://files.cnblogs.com/files/artech/inside-asp-net-core-3.7z 勘误: https://www.cnblogs.com/artech/p/corrigendum.html 来源: oschina 链接: https://my.oschina.net/u/4418764/blog/4326133

【ASP.NET Core快速入门】(八)Middleware管道介绍、自己动手构建RequestDelegate管道

喜欢而已 提交于 2020-08-10 05:36:40
原文出自: 【ASP.NET Core快速入门】(八)Middleware管道介绍、自己动手构建RequestDelegate管道 中间件是汇集到以处理请求和响应的一个应用程序管道的软件。 每个组件: 可以选择是否要将请求传递到管道中的下一个组件。 之前和之后调用管道中的下一个组件,可以执行工作。 使用请求委托来生成请求管道。 请求委托处理每个 HTTP 请求。 请求中使用委托来配置 运行 , 映射 ,和 使用 扩展方法。 一个单独的请求委托,它可将指定的在行作为匿名方法 (称为中,线中间件),或可以在可重用的类中定义它。 这些可重用的类和行在匿名方法 中间件 ,或 中间件组件 。 在请求管道中的每个中间件组件负责调用管道中的下一个组件,或如果相应短路链。 使用 IApplicationBuilder 创建中间件管道 ASP.NET 核心请求管道由请求委托,调用一次是在另一个,如图所示 (执行如下所示的黑色箭头的线程) 的顺序组成: 我们可以链接多个请求委托连同app.use。 next 参数表示管道中的下一步委托。我们一共有两种办法构建管道: 然后执行dotnet build生成项目后执行 dotnet run 来运行我们我们的程序 如果我们在第二步的时候不调用Invoke会怎样?我们先执行 dotnet watch run 然后 我们再修改代码:

基于ASP.NET core的MVC站点开发笔记 0x01

大憨熊 提交于 2020-08-10 04:12:41
基于ASP.NET core的MVC站点开发笔记 0x01 我的环境 OS type:mac Software:vscode Dotnet core version:2.0/3.1 dotnet sdk 下载地址: https://dotnet.microsoft.com/download/dotnet-core/2.0 准备 先到上面提供的下载地址,下载对应平台的 dotnet 装上,然后在命令行窗口输入 dotnet --version 查看输出是否安装成功。 然后,安装 visual studio code ,安装之后还需要安装 C# 拓展,要不然每次打开 cs 文件都会报错。 创建项目 新建一个空目录,例如 mvc-test 。 使用命令 dotnet new 查看可以新建的项目类型: 第一次尝试,使用 ASP.NET Core Empty 就可以,代号是 web ,使用命令 dotnet new web 就可以新建一个空项目,项目的名称就是当前目录的名字 mvc-test 。 项目结构与默认配置 目录主要结构和文件功能如下: Program.cs 是程序的主类, Main 函数在这里定义,内容大致可以这么理解: CreateDefaultBuilder 函数会使用默认的方法载入配置,例如通过读取 launchSettings.json 确定当前的发布环境: webhost

聊聊 2020 的 dotnet 各大开源项目仓库的情况

余生颓废 提交于 2020-08-10 03:55:14
现在是 2020.06.21 我来聊聊我所关注的 dotnet 的几个大开源项目的活跃以及定位情况。包括 WPF 和 WinForms 和 Xamarin 和 ASP.NET Core 和 Blazor 仓库 没有被点名的仓库不代表不活跃和不重要,只是我精力有限,没有参与开发。没有在局里面,不好评论 现在的各个仓库的分工如下: Windows Forms 负责全平台商业化使用,主要是 Windows 和 Linux 系统,同时支持兼容大量诡异的设备。而且开源部分正在疯狂怼功能 WPF 负责 Windows 平台下的应用开发,支持 Win7 sp1 及以上。注意,如果需要支持 xp 依然需要使用 .NET Framework 4.0 之前版本 Xamarin 负责移动端,以及 PC 的 MAC 系统的应用开发。兼职负责 Linux 系统的应用支持,通过 GTK 的方式,有多少坑完全取决于想要支持的 Linux 系统,在 Ubuntu 下相对稳定 Blazor 负责浏览器端的应用开发 ASP.NET Core 负责服务器后台的应用开发,是当前成熟度最高的项目。竟然成熟度比 WPF 还高,哈哈,原因是 WPF 开小差了6年 关于开源情况如下: dotnet runtime 最活跃的项目,用于提供给上面所有仓库,还包括此外的所有 dotnet 项目的运行时和底层库的支持,是整个

温故知新:Docker基础知识知多少

北城余情 提交于 2020-08-10 02:38:33
记得之前曾经粗略的写过一篇Docker的基础及ASP.NET Core部署Docker示例的 入门文章 ,但那个时候刚刚学习Docker对Docker的认知还比较浅,现在重新来温故知新一下。此外,本篇已加入《 .NET Core on K8S学习实践系列文章索引 》,可以点击查看更多容器化技术相关系列文章。 一、容器的用途   首先,我们来温习一下Docker的几个用途,亦或者说 Docker到底帮我们解决什么问题? 1、标准化打包   记得在容器技术出来之前,我们开发者进行打包一般都依赖于各自开发语言平台独有的打包机制,比如.NET和Java平台下都会依赖于各自不同的发布部署技术,但在容器技术出来之后,不管是.NET还是Java都会将其发布为 容器镜像 推送到镜像仓库中来进行复用。 2、隔离   每个容器在运行时都会认为自己是独自占有了一台机器,即一个独立的环境互不干扰。其实, 容器的本质是一个进程 ,进程与进程之间相互隔离造就了容器与容器互不影响的特性。在启动一个容器(即创建一个进程时), 通过 Namespace 技术实现容器的隔离、通过 Cgroups 来实现容器的资源控制 。   关于Namespace 和 Cgroups 可以继续浏览本文3.3小节。 3、标准化部署   在容器技术出来之前,和打包机制一样,我们都依赖于具体开发语言平台的部署机制,比如IIS

一步一步abp电商模块-1、搭建模块环境

给你一囗甜甜゛ 提交于 2020-08-10 02:36:27
前言 目前在开发abp电商模块,打算做一步,写一步,算是对自己的记录,主要是参考nopcommoner 并结合abp模块开发 知识都是连贯的,如果你熟悉asp.net core 3.x、 abp (非 vNext ) 并且需要做电商功能,也许可以做个参考。即使不做电商,可能里面的其它功能也可以作为参考,如:如何开发abp模块、如何集成简单的微信功能(小程序登录、小程序支付)、通用字典模块、等等... 如果不熟悉asp.net core或abp,那建议还是补充基础知识后再说 如果你是专注电商的.neter,建议用 nopcommerce ,它是一个成熟完善的.net开源电商 本篇说说搭建电商模块开发环境 资源 asp.net core 3框架揭秘【书】 大文件分片上传/秒传附件功能 【视频】 通用数据字典【视频】 微信小程序登录【视频】 微信小程序支付【视频】 >>>>>>>>>>> 源码地址 建立电商模块项目 abp的模块就是个dll+一个特殊的类(其中包含生命周期方法),具体概念请参考 官方文档 我这里说的电商模块是指的功能模块,按abp的分层方式分为: xxx.Core:实体、领域服务、领域事件和其它核心功能 xxx.EFCore:基于efCore的仓储实现,由于abp的牛B,它基本为空 xxx.Application:应用服务,动态webApi 木有提供UI部分

【asp.net core 系列】5 布局页和静态资源

巧了我就是萌 提交于 2020-08-09 21:41:48
<header> <nav class="navbar navbar-expand-sm navbar-toggleable-sm navbar-light bg-white border-bottom box-shadow mb-3"> <div class="container"> <a class="navbar-brand" asp-area="" asp-controller="Home" asp-action="Index">MvcWeb</a> <button class="navbar-toggler" type="button" data-toggle="collapse" data-target=".navbar-collapse" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button> <div class="navbar-collapse collapse d-sm-inline-flex flex-sm-row-reverse"> <ul class="navbar-nav flex-grow-1"> <li class=

《全栈工程师 Web 开发指南》

二次信任 提交于 2020-08-09 21:21:41
《全栈工程师 Web 开发指南》 ========== ========== ========== [作者] (意) Dino Esposito [译者] (中) 李永伦 [出版] 人民邮电出版社 [版次] 2019年03月 第1版 [印次] 2019年03月 第1次 印刷 [定价] 79.00元 ========== ========== ========== 【第02章】 【选择支撑架构】 (P018) 领域模型模式的要点是构建一个完全体现业务领域的行为和流程的面向对象模型。 DDD 愿景中的全部持久化问题都委托给领域服务,尤其是仓库。 (P020) 对于领域模型而言,值类型的角色比很多人想象的重要得多。值类型是更精确地建模真实世界的工具。 【第03章】 【用户体验驱动设计】 (P038) 好的 UI 不一定是好的 UX 。好的 UX 可能是有效的,但可能没那么美观。 (P044) 不管物理层、逻辑层、框架、数据库和技术是什么,对于最终用户而言,软件系统唯一重要的是用户界面,确切地说,是这个应用程序的用户体验和感知速度。 【第04章】 【Web 解决方案的架构选项】 (P053) ASP.NET Core 1.0 最复杂的部分是选择要使用的 .NET CLR 。 DNX 运行时环境 (新的 ASP.NET 运行时) 是一个托管进程,其职责之一就是加载 CLR 。 (P054)

asp.net core 3.1多种身份验证方案,cookie和jwt混合认证授权

99封情书 提交于 2020-08-09 19:52:38
开发了一个公司内部系统,使用asp.net core 3.1。在开发用户认证授权使用的是简单的cookie认证方式,然后开发好了要写几个接口给其它系统调用数据。并且只是几个简单的接口不准备再重新部署一个站点,所以就直接在MVC的项目里面加了一个API区域用来写接口。这时候因为是接口所以就不能用cookie方式进行认证,得加一个jwt认证,采用多种身份验证方案来进行认证授权。 认证授权 身份验证是确定用户身份的过程。 授权是确定用户是否有权访问资源的过程。 在 ASP.NET Core 中,身份验证由 IAuthenticationService 负责,而它供身份验证中间件使用。 身份验证服务会使用已注册的身份验证处理程序来完成与身份验证相关的操作。 认证-->授权 关于认证授权我们要区分认证和授权是两个概念,具体可查看MSDN官方文档也可以搜索其它文章看看,讲的很多。其中包括OAuth 2.0 以及jwt的相关知识都有很多资料并且讲解的很好。 身份认证 身份验证方案由 Startup.ConfigureServices 中的注册身份验证服务指定: 方式是在调用 services.AddAuthentication 后调用方案特定的扩展方法(例如 AddJwtBearer 或 AddCookie)。 这些扩展方法使用 AuthenticationBuilder.AddScheme

在ASP.NET Core中创建自定义端点可视化图

北战南征 提交于 2020-08-09 19:46:05
在 上篇文章中 ,我为构建自定义端点可视化图奠定了基础,正如我 在第一篇文章中 展示的那样。该图显示了端点路由的不同部分:文字值,参数,动词约束和产生结果的端点: 在本文中,我将展示如何通过创建一个自定义的 DfaGraphWriter 来为自己的应用程序创建一个端点图。 这篇文章使用了本系列前几篇文章中的技巧和类,因此我强烈建议在继续之前先阅读这些技巧和类。 作者:依乐祝 原文链接: https://andrewlock.net/creating-a-custom-endpoint-visualization-graph/ 译文: https://www.cnblogs.com/yilezhu/p/13380120.html 为端点图添加配置 我们首先要看的是如何配置最终端点图的外观。我们将为两种类型的节点和四种类型的边缘添加配置。边是: 文字边缘:路线部分,例如 api 和 values 中的文字匹配 api/values/{id} 。 参数边缘:路线的参数化部分,例如 {id} route中 api/values/{id} 。 捕获所有边:与“全部捕获”路由参数相对应的边,例如 {**slug} 。 策略边缘:与URL以外的其他约束相对应的边缘。例如,图中的基于HTTP谓词的边 HTTP: GET 。 节点是: 匹配节点:与端点匹配关联的节点,因此将生成响应。 默认节点: 不