自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(197)
  • 收藏
  • 关注

原创 Windows设置NFS客户端

步骤如下:1.安装NFS client2.执行命令3.修改注册表下面两个参数网上说修改到mount命令查询到的数值,但是经过测试,需要修改到0。当用户匿名连接到mount时,显示Uid为-2,因为在DWORD值中不能有负数,你需要把它设置为0。测试的操作系统为Windows server 2012。另外注意开端口号,2049, 111, 20048, 2048, 134, 1234。

2023-04-28 15:47:55 1922 1

原创 通过OpenAPI和Visual Studio生成客户端代码

根据,我们得知,我们可以通过Visual Studio连接API,进而自动生成对应的客户端代码。首先,我们启动一个本地服务。代码可以参考。这里我们获得了一个API地址:http://localhost:5137/swagger/index.html。它的schema地址为http://localhost:5137/swagger/v1/swagger.json。这个地址是我们后面需要用到的地址。然后我们创建一个客户端项目。

2023-04-28 15:46:42 464

原创 .NET & Nsubstitute 模拟Http请求

我们的代码中有时候会需要调用其他平台的接口,在做单元测试的时候,我们不需要测试这些第三方接口是否生效,接口是否有问题,但是如果我们直接调用第三方接口,这些接口的错误又会影响我们正常的测试工作,所以我们应该怎么办呢?我们可以模拟这些接口,让其返回我们期待的返回结果,这样我们就可以顺利的进行内部代码的测试了。这里我们继承,写一个。然后我们通过方法创建一个对象,将其传参给HttpClient对象。然后通过的Return等方法设置返回结果。这里我们设置任意参数的MockSend。

2023-04-28 15:46:09 193

原创 .NET & Nsubstitute 根据条件模拟返回值

有时我们单元测试的时候,期待我们通过模拟的方法可以根据不同的入参、不同的逻辑,返回不同的结果。事实上,支持通过Function的方式返回指定值。例子代码如下这里我们模拟了Insert方法,添加了一些判断,比如Age大于100,返回NULL。根据,需要注意将模拟的方法Insert设置为virtual。

2023-04-28 15:45:15 166

原创 .NET & Xunit 多层级关系的单元测试

我们的代码并不是一个方法可以完成的,我们通常会设置很多层级,比如ControllerRepository,这个时候,单元测试应该怎么写呢?我们应该模拟下层方法(接口)的返回结果,有且只测试当前方法的代码逻辑。下面以为例,我们的代码有和两层,TeacherService会调用TeacherManager的一些方法。分别为它们写单元测试,和。

2023-04-28 15:43:30 63

原创 .NET & Xunit 最佳实践的单元测试

之前我们介绍了如何在单元测试中设置优先级,以一定的顺序执行单元测试。但根据和我们可以知道,这并不是最佳做法。那么最佳做法是什么呢?我们应该保证每一个单元测试都是自包含的。以的测试为例,在测试修改学生信息的方法中,我们应该先新增一个学生信息,然后再修改学生信息,在测试删除学生信息的方法中,我们应该先新增一个学生信息,然后再删除学生信息,以此为思路,则修改和删除的测试方法,不再需要依赖于新增学生的测试方法,则每个测试可以独立进行。现在我们将。

2023-04-28 15:42:25 180

原创 .NET & Xunit 设置优先级、顺序的单元测试

有时候我们期待以固定的顺序执行测试,比如先新增学生信息,再修改学生信息,再查询、再删除。在这种设计下,如果顺序发生变化,可能导致错误,比如修改一个不存在的学生信息,会导致测试不通过。这里以Xunit为例,来看一下如何实现顺序执行单元测试。直接谷歌,可以得到一个官方的答案。定义一个,用于获取unit tests的排序,实现接口,在方法中通过进行排序,即可实现顺序执行unit tests。这里写一些单元测试方法效果如下调试模式下,也可以看到单元测试是按照顺序执行的。需要注意的是,根据。

2023-04-28 15:41:42 189

原创 ASP .NET Core 设置枚举请求和返回使用字符串而非数字

在日常开发中,我们经常会遇到需要传参和返回枚举值,默认情况下我们使用数值,需要双方约定好各种数值代表什么。这样的表示并不明确,无法见名知意。所以我们有没有办法让传参变成字符串,并且我们还能正确转换成枚举值呢?答案是可以。用原生的或者的都可以实现。以下使用原生的说明,只需要在Program.cs添加如下配置即可。根据的说明,可以将枚举值转换为字符串以及从字符串转换为枚举值,并且支持自定义属性名称和值。如果想使用,可以参考。接下来写两个接口用于测试效果如下。

2023-03-08 09:43:05 632

原创 SQL Server 重命名列

【代码】SQL Server 重命名列。

2023-03-08 09:33:54 492

原创 SQL Server 查询列是否存在

以SQL Server为例,查询列是否存在,如果不存在,则新增列。

2023-03-08 09:31:30 451

原创 SQL Server 查询默认值是否存在

以SQL Server为例,查询默认值是否存在,如果不存在,则设置默认值。

2023-03-07 21:58:30 510

原创 SQL Server 检查索引是否存在

以SQL Server为例,检查索引是否存在,如果不存在,则创建索引。

2023-03-07 21:56:49 1449

原创 SQL Server 查询外键是否存在

以SQL Server为例,查询外键是否存在,如果不存在,则创建外键。

2023-03-07 21:55:38 584

原创 C# 保留n位小数的问题

我们在计算数字时,有时会需要保留几位小数,有时需要四舍五入,有时候需要直接舍弃后面的小数,有时候需要进一位,其实C#的方法有提供相应的选项,即。我们翻阅可以看到,有多参数重载。其中支持保留n位小数,并且选择四舍五入的策略。下面是例子代码在中,我们可以看到每一种枚举值的策略。AwayFromZero:舍入到最接近的数字的策略,当数字在两个数字之间的中间时,它将舍入到离零的最接近的数字。ToEven:舍入到最接近的数字的策略,当数字在两个数字之间的中间时,它将舍入到最接近的偶数。

2023-03-07 21:55:29 548

原创 .NET Core .NET 6 为Swagger添加注释

选择需要生成注释文件(xml文件)的项目,右键编辑项目文件。同时,schema文件也有了注释(节选)

2023-03-07 21:54:35 843

原创 Sonarqube integration with Angular

I see online blogs talking about referencing sqlite3.dll,Mono.Data.Sqlite.dll,System.Data.dll,for example [Setup Database (SQLite) for Unity](https://stackoverflow.com/questions/50753569/setup-database-sqlite-for-unity) or using some of the third-party

2022-07-08 22:45:58 141

原创 Unity using Sqlite

I see online blogs talking about referencing sqlite3.dll,Mono.Data.Sqlite.dll,System.Data.dll,for example [Setup Database (SQLite) for Unity](https://stackoverflow.com/questions/50753569/setup-database-sqlite-for-unity) or using some of the third-party

2022-07-08 22:45:01 139

原创 Sonarqube与Angular集成

npm audit输出html报告

2022-07-01 18:24:22 393

原创 npm audit输出html报告

npm audit输出html报告

2022-06-29 22:17:55 309

原创 Unity 使用Sqlite

Unity 使用Sqlite

2022-06-29 22:16:46 938

原创 Visual Studio Installer问题:Your machine is busy installing a program other than Visual Studio

Visual Studio Installer问题:Your machine is busy installing a program other than Visual Studio

2022-06-29 22:15:34 390

原创 C#使用Elasticsearch获得原始查询(NEST)

在OnRequestCompleted方法中可以获得原始查询和查询结果关键代码如下ElasticClient elasticClient = new ElasticClient(new ConnectionSettings(new Uri(address)) //打印请求、回复,可能影响性能 .DisableDirectStreaming() .OnRequestCompleted(apiCallDetail

2022-03-30 19:26:40 2579

原创 C#使用Elasticsearch(NEST)

本文介绍C#使用Elasticsearch的基本方法,并提供一个demo以下说明中包含的http调用,为ElasticsearchTestController中编写的测试方法初始化引用NEST创建ElasticClient对象ElasticClient elasticClient = new ElasticClient(new ConnectionSettings(new Uri(address));新增索引关键代码CreateIndexResponse createIndexRespon

2022-03-30 19:25:41 4625 1

原创 ML .NET 异常情况检测

场景商品的价格会随时间发生变化,可以通过ML .NET的异常情况检测功能获得价格的拐点和峰值,为决策做参考数据集数据来自Every Cryptocurrency Daily Market Price原始数据包含币种symbol、时间date、开盘价open、最高价high、最低价low、收盘价close等多种数据这里只取Bitcoin在2013年4月28日至2018年11月29日的开盘价格,如图所示训练自动化ML尚不支持异常情况检测,所以这里需要正常的写代码根据教程:使用 ML.NET 检

2022-03-23 19:07:38 606

原创 XML转Json 设置指定节点为数组

原XML<response><itemList><item><number>5</number></item></itemList></response>不做处理,转成json{"response":{"itemList":{"item":{"number":"5"}}}}实际上item为集合对象,但是在item节点下只有一个数据的时候,默认转换成了对象而非数组希望转成下面的json{"respo

2022-03-23 19:06:04 937

原创 ML .NET 电影评论情绪分析

场景给出一段电影评价的文字,判断其对电影的评价是积极的还是消极的虽然业务场景和之前的博客不同,但是实际上和ML .NET 预测订单是否被退货的内核是一样的,都是文本数据分类输入一些特征和结果,进行训练,之后使用模型,通过特征,推断结果训练数据数据来自IMDB Dataset of 50K Movie Reviews,包含两列评论review和情绪sentiment训练数据不需要额外处理实际上也可以使用中文的训练数据,在豆瓣等电影评论网站爬取即可训练模型训练方案选择数据分类训练环境选择

2022-03-21 20:03:47 1266

原创 C# 表达式树Expression

表达式相加//常量表达式Expression firstArg = Expression.Constant(2);Expression secondArg = Expression.Constant(4);//相加Expression addExpression = Expression.Add(firstArg, secondArg);Console.WriteLine(addExpression.ToString());将表达式编译成委托Console.WriteLine("将表达式

2022-03-18 14:14:43 768

原创 C# 监控文件变化

使用PhysicalFileProvider实现效果关键代码using Microsoft.Extensions.FileProviders;using Microsoft.Extensions.Primitives;IFileProvider fileProvider = new PhysicalFileProvider(文件夹路径);ChangeToken.OnChange( () => fileProvider.Watch(监控文件名), () => Sh

2022-03-18 14:14:26 1579 1

原创 ML .NET 猫狗图像分类

本文将使用ML .NET的图像分类对猫狗的图像数据进行训练,得到模型;并且开发一个简单的识别程序用来识别猫咪和狗狗。流程根据什么是 ML.NET 以及它如何工作?中的描述,我们知道,工作流如图:这里我按照我的理解重新画了一幅:首先我们需要准备训练数据集和测试数据集;然后通过训练数据集进行训练,获得训练模型;之后检验模型是否合格;如果合格,投入使用;如果不合格,重新设计训练数据集的数据,或者调参,重新训练,直至合格。数据集来源在kaggle Dogs vs. Cats中下载train

2022-03-18 14:14:06 1231 1

原创 .NET 6使用Redis

部署测试环境本地启动redis控制台 && 安装redis服务(用于调试)1.下载最新版redis,选择.zip则是免安装的版本下载地址 (这是封装好的基于windows的redis服务)2.解压到指定目录,并运行cmd命令3.在该文件夹下运行命令:redis-server.exe redis.windows.conf 4.看到如下显示,则表示启动成功5.将redis安装成服务在该文件夹下运行命令:redis-server.exe --service-

2022-03-18 14:13:35 1828

原创 ML .NET 电影推荐

参考Movie Recommendation我采用ML .NET自动化模型的推荐方案来完成这件事情场景根据用户以往对电影的评分,向用户推荐他/她可能感兴趣的电影,从而精确推广目标电影给可能感兴趣的用户群体比如,打开某部电影的介绍页面,会有“喜欢这部电影的人也喜欢”这样的栏目或者在用户页面,有推荐电影的栏目数据集原始数据是ml-latest-small.zip,包括4个.csv文件包含了用户id,电影id,电影名称,电影标签,用户对电影的评分,时间信息等信息实际上最后只使用了用户iduser

2022-03-18 14:13:18 414

原创 ML .NET 预测订单是否被退货

场景根据历史订单的退货情况,预测新订单是否被退货这次利用ML .NET的数据分类功能,将订单状态分为退货、不退货两种,计算每笔订单被退货、不被退货的概率需要注意的是,这里是文本数据分类,使用数据分类,而之前完成的猫狗分类,需要使用图像分类数据集数据来自Amazon Seller - Order Status Prediction描述:BL(Boss Leathers) 是一家小型皮革制品企业,最近开始在亚马逊上销售其产品。 目前,它在印度市场注册了大约 40 个 SKU。 在过去的几个月里,它因

2022-03-18 14:12:45 377

原创 C# 远程连接Linux执行命令

引用SSH.NETstring publicIP = "";int publicPort = 22;string userName = "root";string password = "";string command = "your command";using (SshClient client = new SshClient(publicIP, publicPort, userName, password)){ client.Connect(); SshComma

2022-03-17 07:54:15 2152

原创 Elasticsearch报错Result window is too large

具体报错如下{Type: search_phase_execution_exception Reason: "all shards failed" CausedBy: "Type: illegal_argument_exception Reason: "Result window is too large, from + size must be less than or equal to: [10000] but was [16000]. See the scroll api for a more ef

2022-03-17 07:49:09 1135

原创 ML .NET 二手车价格预测之评估(三)

在模型生成后,可以通过Evaluate方法进行评估//注意,这里使用txt或者tsv格式的文件string testCsvPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "TrainData", "test-data2.txt");string modelDirectory = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Model");string modelPath

2022-03-17 07:48:43 220

原创 ML .NET 二手车价格预测之再次训练与参数调整(二)

再次训练与参数调整在UsedCarsPricePredictionMLModel.training.cs文件下,有训练设置与训练模型的方法BuildPipeline方法中是ML .NET自动生成的训练设置,包括选择了哪些参数,预测的字段是什么,以及调用LightGbm方法,参数配置为{ NumberOfLeaves=17, MinimumExampleCountPerLeaf=25, NumberOfIterations=6019, MaximumBinCountPe

2022-03-17 07:43:43 450

原创 ML .NET 二手车价格预测(一)

本文将使用ML .NET的回归模型对二手车的价格进行训练,得到模型;并且开发一个简单的预测程序用来预测二手车的价格。数据集来源在kaggle Used Cars Price Prediction中下载train-data.csv和test-data.csv,其中train-data.csv用于训练,test-data.csv用于评估打开train-data.csv进行查看,训练数据从左到右的列分别表示,序号、名称、所在地、年份、行驶车程、汽油种类、手动挡/自动挡、转手次数、里程、引擎、马力、座

2022-03-17 07:43:32 526

原创 C# 实现乐观锁

乐观锁的关键是通过版本号判断数据是否被修改,确定操作是否成功以下示例通过自增版本号的方式,判断是否更新数据数据库为sqlite数据库,包含一张myresource表,字段为Id、Version、Resource其中Id为主键,Version为版本号,Resource为业务数据关键代码using(DbConnection connection = new DbConnection(dbConnectionString)){ var resource = connection.Query&l

2022-03-17 07:43:23 786

原创 C# 获得调用者信息

public static void Run(){ //跟踪侦听 System.Diagnostics.Trace.Listeners.Add(new TextWriterTraceListener(System.Console.Out)); TraceMessage("First"); TraceMessage("Second"); TraceMessage("Third");}public static void TraceMessage(string?

2022-03-17 07:43:10 1034

原创 C# 转换枚举为字典

FieldInfo[] fields = typeof(EnumToDictionaryEnum) .GetFields(BindingFlags.Static | BindingFlags.Public) ?? Array.Empty<FieldInfo>();var dictionary = fields.ToDictionary(k => k.Name, v => (int)v.GetValue(null));var dictionary2 = Enum

2022-03-17 07:42:57 604

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除