背景 小编最近接到一个任务,批量获取内部网站用TXT生成的日志,在闲时把日志插入到MySql数据库做分析。为了快速开发小编选择了EntityFrameworkCore,很快开发完成了。测试数据不是很多,批量插入数据很快完成,效率很高。但是部署到线上问题来了,最开始也挺快,越到后面越慢,慢的无法接受。于是查询了一下官网和某度,只需加一句代码就可以让EF批量插入数据飙升。 代码示例 开始的批量添加代码: publicasyncvoidAddRangeAsync(List<T>entities) { await_dbContext.AddRangeAsync(entities); &nb...

  rffnbXSaNCGB   2023年11月02日   87   0   0 .NET

背景 前段时间小编开发了一个控制台程序,把数据库中的数据取出来按照编码名称分别存储文件,存储文件之前检查是否存在当前文件,如果存在删除。开始小批量的数据还挺顺利的,当批量执行问题就来了,每次执行到一半时,创建的文件不增加反而变少了,经过日志捕捉才发现是字段里包含特殊符号惹的祸。小编是按照字段编码来当文件名称的,但是由于是比较老的数据,编码比较乱包含有特殊符号,造成创建文件失败,而且还删除了其它的文件。怎么会删除其它文件了,原来是搜索带有“?”的文件名称后会查出所有的文件然后删除。怎么解决呢?过滤掉名称中的“不可作为文件名的特殊符号”的字符,问题解决。小编分享一下代码: 代码 主要是通过正则表达...

  rffnbXSaNCGB   2023年11月02日   31   0   0 .NET

前段时间小编检查同事代码,发现居然写的太复杂看不太懂,代码命名不规范,重复冗长代码一堆,这时候就可以通过重构来改进代码的质量。代码重构是提高代码质量和可维护性的关键过程,它旨在通过优化代码结构和设计来提高代码的可读性、可理解性和可扩展性。本文讲述在C中重构代码的几个案例,供大家参考。 1、命名清晰明确规范 良好的命名是代码可读性和可维护性的关键。确保使用有意义和描述性的名称来表示变量、方法和类等元素。遵循一致的命名规范,例如使用驼峰命名法或帕斯卡命名法,并根据约定来命名不同类型的元素。比如如下案例: //知道这是啥意义吗? inta=10; // 从名字中可以看出是代表年龄 int...

  rffnbXSaNCGB   2023年11月02日   28   0   0 .NET

前言 小编在油管学习.NET知识,刷到一个外国小哥在用一个类似Idea的IDE开发.NET。出于好奇,小编在某谷搜索Idea支持.NET吗?结果当然不支持,Idea主要是开发Java的IDE。幸好搜索引擎有个图片搜索功能,于是拿图片搜索了这个IDE,原来它的名字叫Rider,是Idea同一家公司JetBrains开发的,专门用于.NET和ASP.NET的跨平台的IDE。 用这张图片搜索 安装 小编毫不犹豫的下载试用,程序800多M,比起VisualStudio还算轻量,但与VisualStudioCode比就稍微有点大了。很快安装完了,打开才发现软件是收费的。 重点来了,小编要薅羊毛,决定免...

  rffnbXSaNCGB   2023年11月02日   67   0   0 .NET

最近有小伙伴问怎么学好C语言,他感觉总是学不好。小编这篇文章将介绍如何学好它,仅供参考。C是Microsoft公司开发的一种新型、高效的面向对象的编程语言,虽然出现的时间并不长,但是其易于学习、语法规范、程序严密的特点已经受到了很多企业和开发者的青睐。所以,对于追求技术和编程方面的人来说,提高自己的C编程能力,是必不可少的一种技能。那么,我们如何提高自己在C编程方面的水平呢? 一、基础的学习和知识要扎实 学习基础知识是提升自己的必要条件。熟练掌握类、对象、继承、封装等OOP概念等。想要成为一位出色的C程序员,首先需要花费大量的时间和精力来深入了解C编程的基本知识。 对于大多数初学者来说,学习C...

  rffnbXSaNCGB   2023年11月02日   47   0   0 .NET

C泛型编程是.NETframework2.0的新特征,它提高了代码安全性和代码重用的问题。由于泛型必须指定类型,正确的使用可以避免了装箱拆箱的问题;使用了泛型后,可以将算法或组件泛型化,基于类型参数支持任意数据类型,从而提高了代码的重用性。C泛型编程在C是很重要的特性,建议.NET开发熟练掌握它的基本知识点,本文将介绍它的几个知识点,供大家参考。 1.泛型类型和方法 泛型类型和方法允许在定义时不指定具体的类型,而是在使用时确定类型。泛型类型和方法可以增加代码的灵活性和可重用性。这是C泛型最基本的功能。 示例代码:  public T GetMax<T>...

  rffnbXSaNCGB   2023年11月02日   30   0   0 .NET

LINQ是C3.0引入的特性,让处理对象就像执行SQL语句一样简单,对于提高C开发效率有革命性的作用。 对于每个.NET开发者来说,掌握C的LINQ知识点是非常重要的。LINQ是C的一个强大的特性,它为数据查询和操作提供了简洁、统一的语法,使得数据处理变得更加直观和灵活。 以下是.NET开发者应该掌握的CLINQ的主要知识点。 1、查询语法和方法语法 LINQ提供了两种主要的查询方式:查询语法和方法语法。查询语法使用类SQL的风格来编写查询,而方法语法使用扩展方法和Lambda表达式来进行查询。开发者应该熟悉这两种语法,并根据实际情况选择最合适的查询方式。 案例如下: //查询语法 ...

  rffnbXSaNCGB   2023年11月02日   33   0   0 .NET

在.NET开发中,用C获取文件信息是比较常见的操作。通过获取文件信息,我们可以了解文件的属性、大小、创建日期、修改日期等各种元数据信息。比如我们网站需要上传文件,可以用扩展名称控制上传的类型,获取文件的大小来限制上传文件等。本文将介绍一系列C中获取文件信息的方法,帮助你轻松获取所需信息并进行文件处理。 1、使用`FileInfo`类获取文件信息 C中提供了`FileInfo`[1]类,它封装了文件的信息和操作。通过实例化`FileInfo`[1]对象,可以轻松获取文件的各种信息。 usingSystem; using System.IO; classProgram { static...

  rffnbXSaNCGB   2023年11月02日   67   0   0 .NET

作为.NET开发者,接口是C必须掌握的知识点,接口是C中实现多态和组件间互操作性的关键机制之一。接口是一种抽象的类型,它定义了一组成员(方法、属性、事件等)的规范,但没有实现代码。类可以实现一个或多个接口,以表明它们提供了特定的功能。 以下是每个.NET开发者应该掌握的C接口知识点: 1、声明接口和实现接口 在C中,使用`interface`关键字来声明接口。例如: //声明接口 publicinterfaceIMyInterface { voidSomeMethod(); intSomeProperty{get;set;} } 使用`class`关键字来定义一个类,并使用冒号(:)符号来...

  rffnbXSaNCGB   2023年11月02日   42   0   0 .NET

简介 有时候我们在发布程序时,不想让客户看到项目中的文件,这时就可以使用.NET的嵌入文件功能(虚拟文件)。在.NET中,虚拟文件(VirtualFile)是一种特殊类型的文件,它们在编译时被嵌入到程序集中,而不是作为独立的文件存在于文件系统中。EmbeddedFile是指在编译时将文件内容嵌入到程序集中,并通过虚拟路径来访问的文件。 使用步骤: 1、嵌入的文件配置 首先将要嵌入的文件添加到项目中,我们在vs项目中新建一个名为"dotnet"的文本文件,并右键属性设置其生成操作为"嵌入的资源"。设置完成右键选择项目"属性",然后在属性窗口中 "生成"选项来完成嵌入。如下图: 生成后...

  rffnbXSaNCGB   2023年11月02日   20   0   0 .NET

上篇文章讲述了C接口的知识点,本文将介绍C委托事件知识点。C作为.NET开发的核心语言之一,提供了丰富的特性来支持面向对象编程和事件驱动的模型。其中,委托和事件是C中不可或缺的关键概念,每个.NET开发者都应该深入理解它们的作用和用法。委托和事件密不可分,所以本文将委托和事件的知识点一起介绍,并通过一些示例来帮助开发者更好地掌握这些重要的概念。 一、委托 委托让方法引用的灵活利用 1、委托的定义与使用 委托是一种数据类型,用于持有对一个或多个方法的引用。通过委托,你可以将方法作为参数传递给其他方法,实现回调机制,实现方法的动态调用。使用`delegate`关键字可以声明委托类型,并创建委托实例...

  rffnbXSaNCGB   2023年11月02日   15   0   0 .NET

上篇文章讲述了C委托和事件知识点,本文将介绍C集合知识点。作为.NET开发人员,C集合是你在构建强大和高效应用程序时的关键技能之一。C集合提供了一系列丰富的数据结构,可以帮助你更好地管理、操作和组织数据。本文将介绍一些每个.NET开发人员都应该掌握的C集合知识点。 1、灵活的List List .是.NETFramework2.0跟随泛型推出的新特征,有了它之后,避免了ArryList数据类型装箱拆箱消耗的问题,它.NET中最常用的集合之一。它实现了动态数组的概念,允许你轻松地添加、删除和访问元素,而无需担心数组大小的限制。你可以使用索引来访问元素,还可以使用方法如Add、Remove和I...

  rffnbXSaNCGB   2023年11月02日   47   0   0 .NET

引子 "某呼"网友提问“C为什么非要把函数叫方法?”,看到这个问题还真不知道怎么回答。要想知道C为什么叫方法,还得从传统面向过程语言说起。 方法的由来 函数(function)是面向过程编程语言里,对可以独立调用代码段的另一种叫法,因为通常有数个输入和一个输出,很像数学里的那个函数。比如C语言中的函数。方法名称的出现主要是针对面向对象语言,方法是对象的动作和行为描述。而C是面向对象语言,所以叫方法。 C中的方法 在C中,函数被称为方法,这是为了强调函数在面向对象编程中的概念。在面向对象编程中,方法是类或结构体的一个成员,它可以用来实现类或结构体的行为。 在C之前的编程语言中,函数通常被称为子程...

  rffnbXSaNCGB   2023年11月02日   32   0   0 .NET

上篇文章讲述了C集合知识点,本文将介绍C异常处理知识点。异常处理是.NET开发中至关重要的一部分,它允许开发者在程序出现错误或不正常情况时采取适当的措施,从而提高应用程序的稳定性和可靠性。本文将介绍C异常处理知识点,异常的基本概念略过,请查看官网。 1、自定义异常 开发者可以创建自定义异常类,以便更好地处理特定于应用程序的错误情况。自定义异常类通常继承自System.Exception,并可以自定义信息或属性来描述异常情况。案例可以查看本公众号之前的文章,如下: 详解-->C自定义异常就这么简单 2、捕获不同类型的异常 使用多个catch块可以捕获和处理不同类型的异常。这使开发者能够根据...

  rffnbXSaNCGB   2023年11月01日   26   0   0 .NET

简介 Flurl是一个用于构建基于HTTP请求的C代码的库。它的主要目的是简化和优雅地处理网络请求(只用很少的代码完成请求)。Flurl提供了一种简单的方法来构建GET、POST、PUT等类型的请求,以及处理响应和异常。它还提供了一些高级功能,如链式调用、缓存请求结果、自动重定向等。本文将介绍Flurl的GET、POST请求功能和序列化功能。 使用流程 1、创建一个APS.NETAPI站点,作为Flurl的请求源 在API里分别新建控制器,在控制器中建get、post两个方法。部分方法代码如下 [HttpGet]  public IEnumerable<string&...

  rffnbXSaNCGB   2023年11月01日   49   0   0 .NET

小编最近费了九牛二虎之力注册了一个ChatGPT账号,今晚就给大家小牛试刀一下,问一下关于.NET的问题,看看ChatGPT的AI功能具体如何? 一、C跟其它语言比较的优势 回答: C是一门编程语言,它是为Microsoft的.NETFramework设计的。它具有以下优势: 强类型语言:C是一门强类型语言,这意味着在编写代码时,必须声明变量的类型。这有助于防止类型错误和确保代码的可读性。 垃圾回收:C的内存管理是由垃圾回收器自动完成的,这意味着开发人员不必担心内存泄漏和内存管理的问题。 广泛的第三方库支持:C社区拥有丰富的第三方库,这些库可以帮助开发人员实现各种功能。 面向对象编程:C支持...

  rffnbXSaNCGB   2023年11月01日   48   0   0 AI综合

最近牛逼的GitHubCopilot试用到期了,离开它还有点不习惯,基础的代码它基本可以帮你搞定,开发效率直接翻倍。为啥这么好用,Copilot的背后是OpenAI和强大的GitHub代码库。那么有没有可以取代它而免费IDE的AI代码辅助工具呢?还真有,小编本文介绍几种免费的代码智能辅助工具。 1、bito.ai Bito.ai是一款由瑞士公司开发的基于人工智能的编程辅助软件。它使用OpenAI和ChatGPT模型来帮助开发人员提高工作效率。Bito.ai可以自动执行任务并生成代码,据说可以将开发速度提高10倍。 目前对个人免费 效果如下: 官网:bito.ai 2、CodeWhispere...

  rffnbXSaNCGB   2023年11月01日   72   0   0 AI综合
关注 更多

空空如也 ~ ~

粉丝 更多

空空如也 ~ ~