nuget

配置WCF同时支持WSDL和REST,swaggerwcf生成文档

混江龙づ霸主 提交于 2020-08-12 14:38:43
配置WCF同时支持WSDL和REST,SwaggerWCF生成文档 VS创建一个WCF工程,通过NuGet添加SwaggerWcf 创建完成后通过 程序包管理控制台 pm> Install-Package SwaggerWcf 也可在 工具 -> NuGet包管理器 -> 管理解决方案的NuGet程序包 安装。 配置 首先对项目添加Global.asax文件,改动如下: protected void Application_Start( object sender, EventArgs e) { RouteTable.Routes.Add( new ServiceRoute( " Service1 " , new WebServiceHostFactory(), typeof (Service1))); RouteTable.Routes.Add( new ServiceRoute( " api-docs " , new WebServiceHostFactory(), typeof (SwaggerWcfEndpoint))); } Web.config配置文件改动如下: 在<configuration>节点 下 添加 < configSections > < section name ="swaggerwcf" type ="SwaggerWcf.Configuration

Jenkins之Nunit的应用

冷暖自知 提交于 2020-08-12 13:36:43
一、在Jenkins中安装Nunit插件 进入jenkins的插件管理模块,下载Nunit插件。此步骤不做截图说明 二、引用nunit.console的nuget包 通过项目引用Nunit.console包 然后可以packages\NUnit.ConsoleRunner.3.11.1\tools文件夹查看,确认如下图所示内容: 三、配置Git凭证 从Git仓储拉取代码,需要先配置一个Git的凭证 四、配置Git仓储 其中分支,可以通过参数传入。 五、还原nuget与编译单元测试项目 还原的nuget是指定.sln解决方案来的 指定编译包含单元测试的项目 六、运行单元测试 添加执行Windows batch command模块 绝对路径 " D:\jenkins\workspace\ocm\api\packages\NUnit.ConsoleRunner.3.11.1\tools\nunit3-console.exe " " ./BAccurate.ImplementTests.dll " --result=a.xml 相对路径 " api\packages\NUnit.ConsoleRunner.3.11.1\tools\nunit3-console.exe " " api\test\BAccurate.ImplementTests\bin\Debug\BAccurate

ASP.NET CORE3.0 API Swagger+IdentityServer4授权验证

冷暖自知 提交于 2020-08-12 02:25:34
一、配置IdentityServer4服务端 这里介绍两种方法 ①直接创建identityserver4的模板,在模板的基础上修改 ②创建新项目,自己搭建 第一种 参考 我的 identityServer4学习 ,创建一个identityServer4模板后 修改config文件 public static IEnumerable<IdentityResource> GetIdentityResources() { return new IdentityResource[] { new IdentityResources.OpenId(), new IdentityResources.Profile(), }; } /// <summary> /// API信息 /// </summary> /// <returns></returns> public static IEnumerable<ApiResource> GetApis() { return new [] { new ApiResource( " ProjectApiScope " , " Demo API with Swagger " ) }; } /// <summary> /// 客服端信息 /// </summary> /// <returns></returns> public static

abp(net core)+easyui+efcore实现仓储管理系统——出库管理之一(四十九)

假装没事ソ 提交于 2020-08-12 01:21:42
abp(net core)+easyui+efcore实现仓储管理系统目录 abp(net core)+easyui+efcore实现仓储管理系统——ABP总体介绍(一) abp(net core)+easyui+efcore实现仓储管理系统——解决方案介绍(二) abp(net core)+easyui+efcore实现仓储管理系统——领域层创建实体(三) abp(net core)+easyui+efcore实现仓储管理系统——定义仓储并实现 (四) abp(net core)+easyui+efcore实现仓储管理系统——创建应用服务(五) abp(net core)+easyui+efcore实现仓储管理系统——展现层实现增删改查之控制器(六) abp(net core)+easyui+efcore实现仓储管理系统——展现层实现增删改查之列表视图(七) abp(net core)+easyui+efcore实现仓储管理系统——展现层实现增删改查之增删改视图(八) abp(net core)+easyui+efcore实现仓储管理系统——展现层实现增删改查之菜单与测试(九) abp(net core)+easyui+efcore实现仓储管理系统——使用 WEBAPI实现CURD (十一) abp(net core)+easyui+efcore实现仓储管理系统—

学习ASP.NET Core(10)-全局日志与xUnit系统测试

眉间皱痕 提交于 2020-08-11 18:33:27
上一篇我们介绍了数据塑形,HATEOAS和内容协商,并在制器方法中完成了对应功能的添加;本章我们将介绍日志和测试相关的概念,并添加对应的功能 一、全局日志 在第一章介绍项目结构时,有提到.NET Core启动时默认加载了日志服务,且在appsetting.json文件配置了一些日志的设置,根据设置的日志等级的不同可以进行不同级别的信息的显示,但它无法做到输出固定格式的log信息至本地磁盘或是数据库,所以需要我们自己手动实现,而我们可以借助日志框架实现。 ps:在第7章节中我们记录的是数据处理层方法调用的日志信息,这里记录的则是ASP.NET Core WebAPI层级的日志信息,两者有所差异 1、引入日志框架 .NET程序中常用的日志框架有log4net,serilog 和Nlog,这里我们使用Serilog来实现相关功能,在BlogSystem.Core层使用NuGet安装 Serilog.AspNetCore ,同时还需要搜索 Serilog.Skins 安装希望支持的功能,这里我们希望添加对文件和控制台的输出,所以选择安装的是 Serilog.Skins.File和Serilog.Skins.Console 需要注意的是Serilog是不受appsetting.json的日志设置影响的,且它可以根据命名空间重写记录级别。还有一点需要注意的是

解决错误 ConfigurationBuilder”未包含“SetBasePath”的定义

这一生的挚爱 提交于 2020-08-11 18:16:20
原文: 解决错误 ConfigurationBuilder”未包含“SetBasePath”的定义 nuget 引用以下三个包 Microsoft.Extensions.Configuration Microsoft.Extensions.Configuration.FileExtensions Microsoft.Extensions.Configuration.Json 来源: oschina 链接: https://my.oschina.net/u/4274413/blog/4288401

使用命名管道承载gRPC

那年仲夏 提交于 2020-08-11 17:36:51
最近GRPC很火,感觉整RPC不用GRPC都快跟不上时髦了。 gRPC设计 gRPC是一种与语言无关的高性能远程过程调用 (RPC) 框架。刚好需要使用一个的RPC应用系统,自然而然就盯上了它,但是它真能够解决所有问题吗?不见得,先看看他的优点: gRPC的主要优点: 现代高性能轻量级 RPC 框架。 协定优先 API 开发,默认使用协议缓冲区,允许与语言无关的实现。 可用于多种语言的工具,以生成强类型服务器和客户端。 支持客户端、服务器和双向流式处理调用。 使用 Protobuf 二进制序列化减少对网络的使用。 对应的适用场景: 微服务 :gRPC 设计用于低延迟和高吞吐量通信。 gRPC 对于效率至关重要的轻量级微服务非常有用。 点对点实时通信 :gRPC 对双向流式传输提供出色的支持。 gRPC 服务可以实时推送消息而无需轮询。 多语言环境 :gRPC 工具支持所有常用的开发语言,因此,gRPC 是多语言环境的理想选择。 网络受限环境 :gRPC 消息使用 Protobuf(一种轻量级消息格式)进行序列化。 gRPC 消息始终小于等效的 JSON 消息。 gRPC还是有缺点的: 浏览器支持受限 :绝大数浏览器不支持 HTTP/2 非人工可读取 :proto文件规定的格式在通讯中会序列化成二进制数据,人工解析较为困难。 不适用的场景与替代: 浏览器可访问的API :gRPC

Sts 授权直传阿里云 OSS-.net core实现

你。 提交于 2020-08-11 15:55:15
前言 磁盘怎么又满了?赶紧 快 打电话给运维扩容扩容扩容!这个问题已经是我入职新公司两个月来,第 3 次听到了。经过一通了解,事情原来是这样的。虽然我们使用了阿里云的 OSS 对象存储服务,但是为了不暴露 AccessKeyId 以及 AccessKeySecret 给客户端,所以全部是由客户端上传到我们的服务器,由我们服务器中转上传,其实只要上传完成删除相应的文件应该就不会引发磁盘空间不足的问题,奈何之前的精神小伙并没有干这一步,文件放磁盘上当备份用。由此引发思考中转上传是不是太麻烦了,直传 OSS 不香吗? 如何保证 AccessKeyId 以及 AccessKeySecret 的安全以及 Bucket 权限问题呢?这就是下面要讲的阿里云 OSS 上的 Sts 授权模式。 STS 临时授权访问 OSS OSS 可以通过阿里云 STS(Security Token Service)进行临时授权访问。通过 STS,您可以为第三方应用或子用户(即用户身份由您自己管理的用户)颁发一个自定义时效和权限的访问凭证。 以上是官方原话,经过我的实践结合理论,可以得出:我们可以通过 STS 颁发一个临时的 AccessKeyId , AccessKeySecret , SecurityToken , 用户可以通过这3个访问凭证对 Oss 进行相应操作。在我们申请颁布访问凭证的时候

Docker在Linux上运行NetCore系列(四)使用私有Nuget与多个本地包引用运行ASPNetCore

拜拜、爱过 提交于 2020-08-11 15:40:50
转发请注明此文章作者与路径,请尊重原著,违者必究。 本篇文章演示了使用Dockerfile在Linux(ubuntu16.04)系统上构建ASPNetCore应用,并且在一个解决方案中存在多个项目之间的引用。还会使用到私有Nuget包的引用。 构建项目 为了演示更加全面,这里按照简单的领域驱动模式建立了几个项目。 Web端为:TestWebDockerOnLinux。使用swagger对外提供API,并且包含了Dockerfile文件。 基础设施层:TestWebDockerOnLinux.Core。封装了基础实体类。 核心逻辑层:TestWebDockerOnLinux.Domain。封装了业务逻辑。 仓储层:TestWebDockerOnLinux.Repository。封装了对数据库的操作,使用仓储模式。 因为Web API层在TestWebDockerOnLinux,所以Dockerfile在此项目中。 项目构建都很简单,你自己可以构建两个项目,一个为Web,另外一个基础类库。为了演示对私有Nuget包的编译,我们在Web层上引用了以下的私有Nuget包并且引用了本地项目: 你可以按照系列(三)那样修改Dockerfile,但是这里演示不修改Dockerfile的路径,贴图: 下面详细说明: Dockerfile它是构建程序的配置文件,首先说明应用所依赖的环境,然后进行编译

NuGet微软官方中国国内镜像

微笑、不失礼 提交于 2020-08-11 13:27:55
为解决国内访问NuGet服务器速度不稳定的问题 ,这里推荐使用NuGet微软官方中国国内镜像 地址:https://nuget.cdn.azure.cn/v3/index.json 添加NuGet源的方式 菜单: 工具 -> NuGet包管理器 -> 程序包管理器设置 来源: oschina 链接: https://my.oschina.net/u/4326664/blog/4273169