Types of Wood Finish

Polyurethane(聚氨酯) Highly durable, water-resistant. Provides a natural appearance; available in satin, semi-gloss and glossy sheens. Ideal for kitchen cabinets, doors, furniture and floors. Not recommended for outdoor use; may yellow or crack when exposed to sunlight unless UV light absorbers are added. Can be difficult to repair if damaged. Polyurethane wood finishes are synthetic coatings …

IIS forward request(转发请求)

最近部门要开发一个简单的APP,部分数据是现有项目已经存在的,为了方便维护,希望只提供一个交互的入口,并且协议的规则不变。 基于这个需求,有两套解决方案: 1.用代码将现有的api封装一层,对请求数据和返回数据不做任何改变,只是中转,然后和新的数据接口一起部署在一个项目里; 2.用IIS进行请求转发,调用现有接口回应请求,剩余部分开发新的api,部署在一个项目里,用URL Rewrite进行过滤分发。 第一个方案很传统,没什么好评价的,这里主要讲一下第二种方案的实现,第二个方案的好处是可以节省时间成本,需要依赖IIS插件(Application Request Routing + URL Rewrite)。 先下载ARR 和 URL Rewrite 进行安装,使用过程中发现ARR对IIS的“目录浏览”功能有依赖(未验证,如果无法使用,可以查看一下是否安装了“目录浏览”功能): 安装好插件,重新打开IIS 双击IIS根目录 双击Application Request Routing Cache 双击右边的 Server Proxy Settings 勾上 Enable proxy 取消勾选“Reverse rewrite host in response headers”,否则所有的响应内容的host都会被重写为当前站点域名,简单来讲,最直接的影响就是对外部站点的重定向都会失败,所以这里取消勾选。 点击“应用”后,新建一个站点,用来接受请求做转发 双击站点,双击 URL Rewrite -> Add Rules(新建规则) -> Blank rule(空白规则)  Name:填写你的规则名称 Match URL 是匹配Requested URL的规则 host: www.test.com requested url: ?name=michael&age=30 query string: name=michael&age=30 Requested …

CORE return HttpResponseMessage

在.net framework下我们编写webapi时返回一般会用到HttpResponseMessage类型,如果返回值什么内容调用此api就能返回什么值了。但是在.net core下我们用HttpResponseMessage来当做返回值得话得到的结果可能就不是你想要的了,可能会出现一堆看起来没什么用的json返回值,如下所示就是我调用后的返回值 其实我们可以安装.net core的webapi兼容包来实现的,通过nuget安装 Microsoft.AspNetCore.Mvc.WebApiCompatShim 然后在Startup中的ConfigureServices方法里在AddMvc()后增加AddWebApiConventions()就行了 这时你再重新调用下webapi返回的值就是你程序里的返回值了。 附上.net core的相关组件清单,以便有用时查询 相关组件ASP.NET Core MVC 包含了下列组件,基于 .NET Core 的精神,只有需要用到的才需要加入参考 (于 project.json),因此开发者可以自由选择,而不必把所有的组件都加进来。 Microsoft.AspNetCore.Mvc ASP.NET Core MVC 引用套件 Microsoft.AspNetCore.Mvc.Abstractions ASP.NET Core MVC 功能的抽象层 Microsoft.AspNetCore.Mvc.ApiExplorer ASP.NET Core MVC 的 API 文件支持 Microsoft.AspNetCore.Mvc.Core ASP.NET Core MVC 核心组件 Microsoft.AspNetCore.Mvc.Cors 提供 Web API 所需要的 CORS 能力 Microsoft.AspNetCore.Mvc.DataAnnotations MVC 所需的数据注解 (Data Annotation) 功能 Microsoft.AspNetCore.Mvc.Formatters.Json MVC/Web API …

core MVC 默认大小写不敏感

对于.Net Core 3.1及以上版本, 默认使用json序列化/反序列化时对大小写不敏感. 设置大小写敏感, 在Startup.cs中添加: 一些简单配置如下.

Solve: A possible object cycle was detected which is not supported

System.Text.Json.JsonException: A possible object cycle was detected which is not supported. This can either be due to a cycle or if the object depth is larger than the maximum allowed depth of 32. at …… 3 work well after installing the package Microsoft.AspNetCore.Mvc.NewtonsoftJson firstly for 3.0 or higher. Try with a new project and compare the differences.

docker 只兼容win10, win2019及以上!!!

docker-ce是docker公司维护的开源项目,是一个基于moby项目的免费的容器产品 。 docker-ee是docker公司维护的闭源产品,是docker公司的商业产品。 一,Docker 的安装 Windows 安装  Docker 官方文档: https://docs.microsoft.com/zh-cn/virtualization/windowscontainers/quick-start/quick-start-windows-server Docker 在不同Windows版本的系统上安装,安装方法是有差异的。 1,在Win10 的安装 在 Docker 官方网站 上注册一个账号,下载程序进行安装就可以了,整个过程只有两步,比较简单。 2,在Windows Server 2016操作系统上 Windows Server 版本,只能安装Docker EE版本。 a,在安装Docker之前,更新操作系统的所有补丁,具体操作方法如下: 在CMD窗口,或者Powershell窗口输入  sconfig 命令,弹出如下窗口: 选择 【6】,再选择【A】,对操作系统的所有补丁进行更新 b,然后,进入PowerShell窗口,安装  Nuget Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force #指定Nuget安装包最小版本 c, 进入PowerShell窗口,用命令行安装 Docker  (摘自:https://q.cnblogs.com/q/104529/) Install-Module DockerProvider -Force Install-Package Docker -ProviderName DockerProvider -Force 或者 Install-Module -Name DockerMsftProvider -Force #安装docker模块 Install-Package -Name docker -ProviderName DockerMsftProvider -Force …