nuget

asp dotnet core 不正经的提升效率的单元测试方法

妖精的绣舞 提交于 2020-08-19 16:58:29
在写 asp dotnet core 时,如果没有单元测试保证,需要每个方法都从 web api 的入口开始运行,此时的执行效率是很低的。而如果写单元测试,又有一个坑的问题是写单元测试也是需要时间的。本文告诉大家一些提高效率的方法,这些方法不是正经的用法,但是能提升效率。至于能不能用好不好用就请观众老爷自己决定 CUnit 中文命名单元测试 在写单元测试时,小伙伴说需要让单元测试的方法名符合 条件_执行_结果 而要求这个方法命名为英文,我的英文就超级渣,这一点 少珺 小伙伴可以帮我证明。于是你会看到我写了以下的测试 WhenABuDengYuThree_DokanarkelawNinirahajairi_SetSlj 的命名,而如果要我优化这个单元测试的命名,大家都知道,有些小伙伴和我一样想一个好的命名可能占了开发的一半时间 写单元测试时,大量的单元测试方法命名将会占用大量的时间,让小伙伴不愿意写单元测试。或者写出来的单元测试的只有自己能读懂 在一个团队里面的,如果英文水平参差不齐,如我所在的团队有英文特别厉害的 walterlv 和 天龙 也有英文特别差国语也特别差的大壮哥,还有英文有毒的本渣。此时用英文命名的单元测试就是一个神坑,除非团队能成立一个改名部专门协助命名 一个解决方法是干脆用中文命名单元测试算了,请看下面单元测试 [TestClass] public class

Reinstall Nuget Package Manager in Visual Studio 2019

☆樱花仙子☆ 提交于 2020-08-19 11:03:10
问题 I am facing a problem with my project. The type or namespace name 'System' could not be found (are you missing a using directive or an assembly reference? This has happened before and I solved it by reinstalling the Nuget Package Manager using a command. Unfortunately, I am not finding that command again. I tried to find the solution online but everything I am getting is installing/reinstalling NuGet packages and not package manager. Found this article: https://forums.asp.net/t/1776324.aspx

NuGet.exe pack gives access to the path is denied

本秂侑毒 提交于 2020-08-19 05:49:29
问题 When I try to pack my MVC project ( NuGet.exe pack ) I get: NuGet.exe : Access to the path '...' is denied. This happens to be the case for all files in the content and script folder of my MVC solution. If I remove the readonly flag on all these files NuGet.exe is able to create the NuGet package. Why do I have to remove the readonly flag? Is there another way? I'm using TFS which specify the readonly flag on all files under source control. I am running: NuGet Version: 1.7.30402.9028

c#多线程总结(纯干货)

我们两清 提交于 2020-08-19 00:49:01
线程基础 创建线程 static void Main( string [] args) { Thread t = new Thread(PrintNumbers); t.Start(); // 线程开始执行 PrintNumbers(); Console.ReadKey(); } static void PrintNumbers() { Console.WriteLine( " Starting... " ); for ( int i = 1 ; i < 10 ; i++ ) { Console.WriteLine(i); } } View Code 暂停线程 class Program { static void Main( string [] args) { Thread t = new Thread(PrintNumbersWithDelay); t.Start(); PrintNumbers(); Console.ReadKey(); } static void PrintNumbers() { Console.WriteLine( " Starting... " ); for ( int i = 1 ; i < 10 ; i++ ) { Console.WriteLine(i); } } static void PrintNumbersWithDelay() {

深入理解 EF Core:使用查询过滤器实现数据软删除

試著忘記壹切 提交于 2020-08-18 16:03:05
原文: https://bit.ly/2Cy3J5f 作者:Jon P Smith 翻译:王亮 声明:我翻译技术文章不是逐句翻译的,而是根据我自己的理解来表述的。其中可能会去除一些本人实在不知道如何组织但又不影响理解的句子。 这篇文章是关于如何使用 EF Core 实现软删除的,即表面上删除了数据,但数据并没有被物理删除,在需要的时候你还是可以把它读取出来的。软删除有很多好处,但也有一些值得注意的问题。这篇文章会教你使用 EF Core 实现一般的软删除和复杂的级联软删除。在此过程中,我还会介绍如何编写可重用代码来提高软删除解决方案的开发效率。 我假设你对 EF Core 已经有了一定的认识。但在真正讲软删除实现的方案之前,我们先来了解一下如何使用 EF Core 实现删除和软删除的一些基本知识。 本文是“深入理解 EF Core”系列中的第三篇。以下是本系列文章列表: 深入理解 EF Core:当 EF Core 从数据库读取数据时发生了什么? 深入理解 EF Core:当 EF Core 写入数据到数据库时发生了什么? 深入理解 EF Core:使用查询过滤器实现数据软删除(本文) 概要 ∮. 你可以使用全局查询过滤器(现在称为查询过滤器)为你的 EF Core 应用程序添加软删除功能。 ∮. 在应用程序中使用软删除的主要好处是可以恢复无意的删除和保留历史记录。 ∮.

GRpc添加客户端的五种方式

孤者浪人 提交于 2020-08-18 13:16:37
随着微服务的发展,相信越来越多的.net人员也开始接触GRpc这门技术,大家生成GRpc客户端的方式也各不相同,今天给大家介绍一下依据Proto文件生成Rpc客户端的五种方式 前提:需要安装4个Nuget包 Google.Protobuf、Grpc、GRpc.Net.ClientFactory、GRpc.Tools VS安装命令如下 Install-Package Google.Protobuf Install-Package Grpc Install-Package GRpc.Net.ClientFactory Install-Package GRpc.Tools 准备工作 首先我们新建一个简单的.net core3.1类库 命名为:GRpc.Proto 然后添加HelloWord.Proto 添加一个简单的协议 syntax = "proto3"; import "google/protobuf/timestamp.proto"; option csharp_namespace = "HelloWordDemo"; package HelloWord; service HelloWord{ rpc SayHelloWord(SayHelloWordRequest) returns (SayHelloWordResponse); } message

.Net Core3.1下使用Swagger搭建web api项目

泪湿孤枕 提交于 2020-08-18 07:38:21
前言:微软于前天发布.net core 3.1正式版,并将长期支持3.1。所以我听到这个消息后就急忙下载.net core 3.1的SDK和Runtime,应该是公司最先用3.1的攻城狮了😄。 OK!废话少说,今天的目的是基于.net core 3.1建一个web api的项目 先下载.net core 3.1的SDK(开发.net core项目时会用到)和Runtime(用来运行.net core的应用程序) 地址: https://dotnet.microsoft.com/download/visual-studio-sdks?utm_source=getdotnetsdk&utm_medium=referral 创建ASP.NET Core web项目 ps:不要选错了😂 这里说一下项目目录下的各个文件的作用 引入Swashbuckle.AspNetCore程序包 执行以下命令 Install-Package Swashbuckle.AspNetCore -Version 5.0 . 0 -rc4 添加 并配置Swagger中间件 services.AddSwaggerGen(c => { c.SwaggerDoc( " v1 " , new OpenApiInfo { Title = " My API " , Version = " v1 " }); }); app

旧 WCF 项目迁移到 asp.net core + gRPC 的尝试

被刻印的时光 ゝ 提交于 2020-08-18 06:26:00
一个月前,公司的运行WCF的windows服务器down掉了,由于 AWS 没有通知,没有能 第一时间 发现问题。 所以,客户提出将WCF服务由C#改为JAVA,在Linux上面运行;一方面,AWS对Linux有较多的监控措施,另一方面,假如出现问题,可以设置自动重启等服务。 老旧的WCF服务 目前WCF服务,主要提供windows桌面软件的 数据接口 ,应该有五六年的历史了。我进入公司后,WCF服务的代码,一直由我一个人来维护。存在很多 历史遗留问题 ,也有 不同版本 的共存。 如果java重写的话,其中的业务逻辑代码,难免会出现各种各样的bug,增加开发和测试的工作量。听说,要移植到linux服务上后,第一时间想到的就是 跨平台 的 .net core 。 .net core 经过了四年的发展,到目前的 3.1 LST版本,已经是 非常成熟 的跨平台解决方案了。 之后,我就在网上查找,有没有WCF的.net core 版本,查询到的信息总结如下: Core WCF不打算做WCF到.NET Core的100%兼容的移植; 对于新应用程序,WCF这种SOAP技术不建议使用; 对于老的应用程序,建议将这些保留在.NET Framework上; 如果您真的想将一个旧的应用程序迁移到.NET Core并且想继续使用WCF和WF, 社区的开源项目也是可以的

VS2010插件之NuGet

时光怂恿深爱的人放手 提交于 2020-08-18 05:24:08
Visual Studio(简写VS)是.net程序员开发必不可少的开发工具,随着VS的版本不断的升级和使用用户的扩大,现在针对VS开发了许多的开源免费的插件,大大的方便了程序员的开发,提高了开发效率。今天,我将介绍一下VS2010下面一个免费开源的插件NuGet ,英文全名应该是New Get。它是一个专门管理这些插件的插件,通过NuGet你可以下载安装好多功能强大的插件。 NuGet的安装可以通过VS2010 工具里面的扩展管理器(下图),联机搜索到,直接安装。 或者通过如下的链接地址从MSDN网站进行下载,点击直接安装。 http://visualstudiogallery.msdn.microsoft.com/27077b70-9dad-4c64-adcf-c7cf6bc9970c 安装成功后,在VS2010 工具里面的扩展管理器里面就能发现它了,如下图: 安装完了 NuGet后,怎样使用呢?其实使用起来非常的方便,只需在项目的引用处右键,弹出一个对话框,点击管理NuGet程序包,就可以下载和使用各种插件了,是不是非常的方便。 双击管理NuGet程序包,将弹出NuGet的管理界面,里面有最新的各种.net插件,同时也证明,免费的软件,有时候也是非常好用得。 来源: oschina 链接: https://my.oschina.net/u/4330033/blog