202010-09 基于.NET Core 3.1 网站开发和部署的方法 一、准备开发环境1.主要开发工具的选择vscode.NETCorecommand-lineinterface(CLI)toolsDbeaver这里选择vscode+.netcorecli是因为不管在Windows还是Linux和Mac上都能使用这一套工具,而且命令行工具也非常强大。2.vscode安装C#插件在vscode插件市场中搜索安装即可新手还可以去这里了解vscode的强大之处3.安装数据库这里使用Centos7,因为.NETCore3.1只支持7及以上版本配置网络nmcliconnnmcliconnaddifname... 继续阅读 >
202010-09 Linux安装.Net core 环境并运行项目的方法 一安装环境1.从微软官网下载Linux版本的.NetCoreSdk2.0安装包打开终端:第一步:sudoyuminstalllibunwindlibicu(安装libicu依赖)第二步:sudomkdir-p/home/wenya/dotnet&&sudotarzxf/home/wenya/NetCoreSdk/dotnet.tar.gz-C/home/wenya/dotnet第三步:sudoln-s/home/wenya/dotnet/dotnet/usr/local/bin(创建链接)如果dotnet--info可以执行则表明.NETCoreSDK安装成功。二部署项目:VS发布项目复制... 继续阅读 >
202010-09 ASP .NET Core API发布与部署以及遇到的坑和解决方法 最近在写.NetCore的API,由于之前没接触过Core,所以自己的想法很简单,感觉和.Net都是差不多的东西,发布部署还是按.Net的那一套来,可谓是困难重重,走了不少弯路。 也没什么漂亮的词语,也不是技术大牛,就是抱着学习技术的态度,随手写写这一套流程,以及遇到的问题跟解决方法。一、安装服务器环境 &nb... 继续阅读 >
202010-09 在IIS上部署ASP.NET Core Web API的方法步骤 对于本文,我想与您分享有关如何在IIS上部署ASP.NETCoreWebAPI的指南。我将指导您安装VisualStudio2019,.NETCoreRuntime3.0。我还确保我逐步引导您在服务器(WebIIS)中启用它,使用no受管代码选项创建新的应用程序池,创建ASP.NETCoreWebAPI项目以及发布ASP.NETCoreWebAPI。了解并遵循正确的步骤来准备开发和部署环境后,在IIS上部署ASP.NETCoreWebAPI就是一件容易的事。几天前,Microsoft的VisualStudio团队... 继续阅读 >
202010-09 在 asp.net core 的中间件中返回具体的页面的实现方法 前言在asp.netcore中,存在着中间件这一概念,在中间件中,我们可以比过滤器更早的介入到http请求管道,从而实现对每一次的http请求、响应做切面处理,从而实现一些特殊的功能在使用中间件时,我们经常实现的是鉴权、请求日志记录、全局异常处理等等这种非业务性的需求,而如果你有在asp.netcore中使用过swashbuckle(swagger)、healthcheck、miniprofiler等等这样的组件的话,你会发现,这些第三方的组件往往都提供... 继续阅读 >
202010-09 ASP.NET Core中修改配置文件后自动加载新配置的方法详解 前言在ASP.NETCore默认的应用程序模板中,配置文件的处理如下面的代码所示:config.AddJsonFile(path:"appsettings.json",optional:true,reloadOnChange:true);config.AddJsonFile(path:$"appsettings.{env.EnvironmentName}.json",optional:true,reloadOnChange:true);appsettings.json和appsettings.{env.EnvironmentName}.json两个配置文件都是可选的,并且支持当文件被修改时能够重新加载。可以在ASP.NET... 继续阅读 >
202010-09 ASP.NET Core学习之使用JWT认证授权详解 概述认证授权是很多系统的基本功能,在以前PC的时代,通常是基于cookies-session这样的方式实现认证授权,在那个时候通常系统的用户量都不会很大,所以这种方式也一直很好运行,随着现在都软件用户量越来越大,系统架构也从以前垂直扩展(增加服务器性能)->水平扩展(增加服务器数量)cookies-session工作方式客户端提交用户信息->服务器识别用户->服务端保存用户信息->返回session-id客户端->客户端保存session-id->... 继续阅读 >
202010-09 Asp.Net Core 中的“虚拟目录”实现 写在前面现在部署Asp.NetCore应用已经不再限制于Windows的IIS上,更多的是Docker容器、各种反向代理来部署。也有少部分用IIS部署的,IIS部署确实是又快又简单,图形化操作三下五除二就可以发布好一个系统了。在过去Asp.NetMVC项目部署的时候,还常常使用IIS一个功能——虚拟目录。虚拟目录可以直接定位到非项目的其他路径,将路径作为网站的一部分,可实现上传文件保存到其他盘符或间接的使用项目以外的静态文件。在Asp.Net... 继续阅读 >
202010-09 ASP.NET Core 配置和使用环境变量的实现 前言通常在应用程序开发到正式上线,在这个过程中我们会分为多个阶段,通常会有开发、测试、以及正式环境等。每个环境的参数配置我们会使用不同的参数,因此呢,在ASP.NETCore中就提供了相关的环境API,方便我们更好的去做这些事情。环境ASP.NETCore使用ASPNETCORE_ENVIRONMENT来标识运行时环境。ASP.NETCore预设环境Development:开发环境Staging:暂存环境(测试环境)Production:正式环境要取得系统变量ASPNETCORE_ENV... 继续阅读 >
202010-09 ASP.NET Core AutoWrapper 自定义响应输出实现 前言AutoWrapper是一个简单可自定义全局异常处理程序和ASP.NETCoreAPI响应的包装。他使用ASP.NETCoremiddleware拦截传入的HTTP请求,并将最后的结果使用统一的格式来自动包装起来.目的主要是让我们更多的关注业务特定的代码要求,并让包装器自动处理HTTP响应。这可以在构建API时加快开发时间,同时为HTTP响应试试我们统一的标准。安装AutoWrapper.Core从NuGet或通过CLI下载并安装PM>Install-PackageAutoWrapper.Core在Start... 继续阅读 >
202010-09 在.net core中实现字段和属性注入的示例代码 简单来说,使用Ioc模式需要两个步骤,第一是把服务注册到容器中,第二是从容器中获取服务,我们一个一个讨论并演化。这里不会考虑使用如Autofac等第三方的容器来代替默认容器,只是提供一些简单实用的小方法用于简化应用层的开发。将服务注入到容器asp.netcore官方给出的在容器中注册服务方法是,要在Startup类的ConfigureServices方法中添加服务,如下所示:publicvoidConfigureServices(IServiceCollectionservices){servic... 继续阅读 >
202010-09 ASP.NET Core 奇淫技巧之伪属性注入的实现 一.前言开局先唠嗑一下,许久未曾更新博客,一直在调整自己的状态,去年是我的本命年,或许是应验了本命年的多灾多难,过得十分不顺,不论是生活上还是工作上。还好当我度过了所谓的本命年后,许多事情都在慢慢变好,我将会开始恢复更新博客,争取恢复到以前的速度上(因为工作比较忙,所以这个过程可能需要一段时间)。二.关于属性注入说到属性注入,我们就不得不提一下DI(DependencyInjection),即依赖注入,用过ASP.NETCore... 继续阅读 >
202010-09 ASP.NET Core奇淫技巧之动态WebApi的实现 一.前言接触到动态WebApi(DynamicWebAPI)这个词的已有几年,是从ABP框架里面接触到的,当时便对ABP的这个技术很好奇,后面分析了一波,也尝试过从ABP剥离一个出来作为独立组件来使用,可是后来因与ABP依赖太多而放弃。十几天前朋友熊猫将这部分代码(我和他在搞事情)成功的从ABP中剥离出来并做了一个简单Demo扔给我,经过这么久(实在是太懒_)终于经过一些修改、添加功能、封装,现在已经能作为一个独立组件使用,项目开... 继续阅读 >
202010-09 ASP.NET Core奇淫技巧之动态WebApi的实现 一.前言接触到动态WebApi(DynamicWebAPI)这个词的已有几年,是从ABP框架里面接触到的,当时便对ABP的这个技术很好奇,后面分析了一波,也尝试过从ABP剥离一个出来作为独立组件来使用,可是后来因与ABP依赖太多而放弃。十几天前朋友熊猫将这部分代码(我和他在搞事情)成功的从ABP中剥离出来并做了一个简单Demo扔给我,经过这么久(实在是太懒_)终于经过一些修改、添加功能、封装,现在已经能作为一个独立组件使用,项目开... 继续阅读 >
202010-09 ASP.NET Core中的响应压缩的实现 介绍#响应压缩技术是目前Web开发领域中比较常用的技术,在带宽资源受限的情况下,使用压缩技术是提升带宽负载的首选方案。我们熟悉的Web服务器,比如IIS、Tomcat、Nginx、Apache等都可以使用压缩技术,常用的压缩类型包括Brotli、Gzip、Deflate,它们对CSS、JavaScript、HTML、XML和JSON等类型的效果还是比较明显的,但是也存在一定的限制对于图片效果可能没那么好,因为图片本身就是压缩格式。其次,对于小于大约150-1000字节... 继续阅读 >
202010-09 ASP.NET Core Authentication认证实现方法 追本溯源,从使用开始首先看一下我们通常是如何使用微软自带的认证,一般在Startup里面配置我们所需的依赖认证服务,这里通过JWT的认证方式讲解publicvoidConfigureServices(IServiceCollectionservices){services.AddAuthentication(authOpt=>{authOpt.DefaultAuthenticateScheme=JwtBearerDefaults.AuthenticationScheme;authOpt.DefaultChallengeScheme=JwtBearerDefaults.AuthenticationScheme;... 继续阅读 >