C#常用字符串操作
字符串操作在任意编程语言的日常编程中都随处可见,今天来汇总一下 C# 中关于字符串的一些常用的知识点。
逐字字符串在普通字符串中,反斜杠字符是转义字符。而在逐字字符串(Verbatim Strings)中,字符将被编程器按照原义进行解释。使用逐字字符串只需在字符串前面加上 @ 符号。
123456789101112// 逐字字符串:转义符 var filename = @"c:\\temp\\newfile.txt"; Console.WriteLine(filenaame); // 逐字字符串:多行文本 var multiLine = @"This is a multiline paragraph."; Console.WriteLine(multiLine); // 非逐字字符串 var escapedFilename = "c:\\temp\\newfile.txt"; Console.WriteLine(escapedFilename);
输出:
12345c:\\temp\\newfile ...
ABPvNext 使用笔记
Domain引入Volo.Abp.Ddd.Domain
创建模块:DomainModule[DependsOn(typeof(AbpDddDomainModule))]
创建领域模型,聚合根需要继承AggregateRoot(BasicAggregateRoot),非聚合根直接继承Entity
Application.Contracts引入Volo.Abp.Ddd.Application.Contracts
创建模块:ApplicationContractModule创建对应Dto模型创建IService,继承IApplicationService,定义提供的方法
Application依赖Volo.Abp.Ddd.Application依赖Application.Contracts依赖Domain依赖Volo.Abp.AutoMapper
创建Service,继承ApplicationService,继承并实现IService
创建模块:ApplicationModule[DependsOn]DomainModule[DependsOn]ApplicationContractModu ...
Blazor是否值得花时间学习
Blazor 是微软 .NET 团队开发的一个新的 UI 框架,目前生态发展的还不错。仅国内就出现了不少成熟的 UI 框架,比如基于 Ant Design 的企业级组件库 ant-design-blazor[1]、基于 ElementUI 的 element-blazor[2] 和基于 Bootstrap 的 BootstrapBlazor[3] 等,这些开源项目的发起人都是国内开发者。另外,你可以在 GitHub 的 awesome-blazor[4] 项目查看更丰富的 Blazor 资源。
要更好地了解 Blazor,必定要先知道 WebAssembly 是什么。
WebAssembly 与 .NET 无关,WebAssembly 已经慢慢开始普及被采用。简单来说,WebAssembly 是一种新的、类似汇编的网络语言。它可以在浏览器中运行,并且支持所有现代浏览器。由于经过高度优化,所以运行速度快,接近本地应用。
重要的是,WebAssembly 不是一种绝大多数开发者都会写的语言,而是用来作为编译目标的。你可以将代码针对特定的处理器或操作系统编译成 WebAssembly,然后让 ...
dotnet源管理
源管理查看列出当前目录中的已配置源
1234567dotnet nuget list sourceRegistered Sources: 1. nuget.org [Disabled] https://api.nuget.org/v3/index.json 2. nuget.cnblogs [Enabled] https://nuget.cnblogs.com/v3/index.json
添加新源地址1dotnet nuget add source [地址] -n [名称]
删除指定源地址1dotnet nuget remove source [名称]
禁用指定源地址1dotnet nuget disable source [名称]
启用指定源地址1dotnet nuget enable source [名称]
Ventoy(一款创建可启动USB驱动器的开源工具)
Ventoy是一个强大的免费开放源代码工具,用于为ISO / IMG / EFI和WIM文件创建可启动的USB驱动器。与当今市场上99%的闪存工具不同,Ventoy可以直接运行或重新安装即可启动文件。
这意味着你无需格式化优盘,用户只需要将所需的ISO镜像文件拷贝至优盘中即可在Ventoy界面中选择自己想要的ISO镜像文件。
Ventoy支持传统BIOS和UEFI,并结合了对GPT和MBR分区样式的支持。此外,它还能够支持任何ISO文件,它还支持大多数操作系统,包括Windows、Linux、Vmware、Unix、Xen和WinPE。
你需要注意的是,Ventoy会在第一次安装时对你的驱动器进行格式化,但之后你可以继续像往常一样使用你的闪存。除非你选择用NTFS/FAT32/UDF/XFS/Ext2等手动方式重新格式化它。
目前,目前已经测试了各类超过550+ 个ISO文件(列表)。支持 distrowatch.com 网站上收录的 90%+ 的操作系统(列表)。
Ventoy具有以下特性:
免费和开源软件
两种ISO文件 ...
34 个 JavaScript 优化技巧
原文地址:34 JavaScript Optimization Techniques to Know in 2021原文作者:atit53
可能你已经进行了多年的 JavaScript 开发工作,但有时候你还是会对一些最新的技术不那么了解,而这些新技术可能有助于某些问题的解决而不需要你去编写更多的代码。有时候,这些新技术也能帮助你进行代码优化。此外,如果你今年需要为 JavaScript 面试作准备,本文也是一份实用的参考资料。
在这里,我会介绍一些新的语法糖,它可以优化你的 JavaScript 代码,使代码更简洁。下面是一份 JavaScript 语法糖列表,你需要了解一下。
1. 含有多个条件的 if 语句我们可以在数组中存储多个值,并且可以使用数组的 includes 方法。
12345678//longhandif (x === 'abc' || x === 'def' || x === 'ghi' || x ==='jkl') { //logic}//shorthand ...
真香!微软出Go语言教程了
课程地址:https://docs.microsoft.com/zh-cn/learn/paths/go-first-steps/
最近,有一项关于Go开发者的调查报告发布,这份报告的主要亮点有以下几点:
总体满意度很高,有 92% 的受访者对使用 Go感到满意
Go的使用在工作场所和企业中正在不断扩大,有76%的受访者在工作中使用 Go
Go继续被大量用于API、CLI、Web、DevOps和数据处理
简而言之,就是一句话,Go编程语言越来越受欢迎了,如果你最近也正想学习这门语言,那真是来对地方了,最新上传了一个Go教程,最关键的是还有中文版。
通过这份教程,你可以 了解使用 Go 编译简单程序所需的基本语法和思维过程。
在此学习路径下,你将:
安装编写第一行 Go 代码所需的工具。
了解如何在 Go 中使用控制流。
了解 Go 的数据类型。
了解如何处理错误。
使用方法和接口
了解 Go 中并发的工作原理。
编写并测试程序
不过学习这门教程之前,先确保自己至少熟悉一门编程语言,以及一些常规的编程基础知识。
课程地址:https://docs.microsoft.com/zh ...
C# 9.0 新特性
简化 模式匹配模式匹配(Pattern Matching)是在 C# 7.0 引入的,是对 switch 语句的增强,可以支持实现复杂的条件匹配。下面我先用一个示例来展示一下模式匹配的一般的用法。
假如现在我们要计算各种车辆在某高速的通行费,比如有下面四种车辆,分别定义为以下四个类,各个类中定义了和通行费计算相关的属性:
1234567891011121314151617181920public class Car{ public int Passengers { get; set; }}public class DeliveryTruck{ public int GrossWeightClass { get; set; }}public class Taxi{ public int Fares { get; set; }}public class Bus{ public int Capacity { get; set; & ...
Vue项目中使用Typescript
基础api官方文档
简单来说,ts属于强类型语言,它的优势在于静态类型检查,概括来说主要包括以下几点:
静态类型检查
IDE 智能提示
代码重构
可读性
typescript在vue项目中的基础用法
vue-property-decorator
vue-property-decorator在vue-class-component的基础上增加了更多与Vue相关的装饰器,使Vue组件更好的跟TS结合使用。这两者都是离不开装饰器的,(decorator)装饰器已在ES提案中。Decorator是装饰器模式的实践。装饰器模式呢,它是继承关系的一个替代方案。动态地给对象添加额外的职责。在不改变接口的前提下,增强类的性能。
vue-property-decorator是这个Vue项目文件中完全依赖的库,它是Vue官方推荐的并且依赖于vue-class-component,先介绍下它在项目中的常见用法。
@Component
@Emit
@Provice @Inject
@Prop
@Watch
@Model
@Minxins
@Component 类装饰器首先,Vu ...
C#.NET问答 高级进阶篇
1.说说什么是架构模式。1,分层。2,分割。分层是对网站进行横向的切分,那么分割就是对网站进行纵向的切分。将网站按照不同业务分割成小应用,可以有效控制网站的复杂程度。3,分布式。在大型网站中,分层和分割后主要是为了让网站能够便于分布式部署,也就是将不同的模块部署到不同的服务器上。常用的分布式方案有如下几种。3.1 分布式应用和服务。3.2 分布式静态资源。3.3 分布式数据和存储3.4 分布式计算。3.5 此外还有分布式配置,分布式锁,分布式文件系统等。4,集群。分布式方案只是将不同的模块或服务独立部署到服务器上,但通常还是单台服务器。集群则是将同一个模块或服务同时部署到多台服务器上,通过负载均衡设备对外提供服务。5,缓存。常用的缓存有如下几种,CDN,反向代理,本地缓存,分布式缓存。6,异步。异步一般通过队列的方式来实现。在单一服务器中,可以通过多线程共享内存队列实现异步。在分布式系统中,可以通过分布式消息队列实现。异步有一些作用,描述如下。6.1,提高系统可用性。6.2,加快网站响应速度。6.3,消除并发访问高峰。7,冗余冗余的目的是实现高可用性。是通过使用集群来实现的。即使是再小 ...