上一页 1 2 3 4 5 6 7 ··· 10 下一页
摘要: 之前有博友提到swagger页面的地址不好复制,我也有这种感觉,最近又有朋友跟我抱怨这个,所以今天花了点时间来看看有什么解决办法。 原先,在一个swagger页面,如果想复制,当鼠标放在一个接口项上点击后,是无法进行选择的,因为点击表示打开这个选项卡! 但是我们可以点击其它空白区域,然后进行选择是可 阅读全文
posted @ 2022-05-18 18:42 没有星星的夏季 阅读(1388) 评论(0) 推荐(0) 编辑
摘要: 准备工作 我们要将一个主机设置成静态IP,首先,主机应该要是正常开机运行的,其次,我们需要先知道一些配置,比如当前的网段,子网掩码,网关、DNS等,因为你总不会是想随便配置,不连接访问局域网中的其它主机吧?而这些信息,我们可以通过运行中的主机得到,当然,如果你事前已知晓这些配置,可以跳过,如果不知道 阅读全文
posted @ 2022-04-01 13:45 没有星星的夏季 阅读(3999) 评论(0) 推荐(0) 编辑
摘要: .net core实现了依赖注入,虽然可以满足大部分的场景了,但是还是有许多不足,其中之一就是实现带名称服务的依赖注入。 举个例子,比如有下面的接口和它的实现类: public interface IPerson { string Say(); } public class Person1 : IP 阅读全文
posted @ 2022-03-15 13:14 没有星星的夏季 阅读(859) 评论(0) 推荐(2) 编辑
摘要: 首先,我们有多种方式获取本地IP地址,比如:.net core获取本地Ip地址的方法 ,这种方式与项目类型无关。 如果后端项目是一个web项目,我们还可以通过HttpContext来获取后端项目所在服务器的本地IP,而且还能获取客户端的IP地址: var connection = HttpConte 阅读全文
posted @ 2022-02-21 10:43 没有星星的夏季 阅读(2001) 评论(0) 推荐(0) 编辑
摘要: 三元运算符(?:) 三元运算符应该都很熟,通常我们也可以使用if-else来代替三元运算,这一点就不多说了,一个简单的例子: //取一个0.5-1之间的随机值 var value = new Random().NextDouble(); value = value < 0.5 ? 0.5 + val 阅读全文
posted @ 2022-02-10 14:14 没有星星的夏季 阅读(6569) 评论(0) 推荐(2) 编辑
摘要: 开始之前,先想一下,作为C#开发,你在开发过程中遇到的最多的异常是哪个? 不出意外,估计都是空指针引用,ArgumentNullException! 那么有没有办法尽量在开发过程检查出来,而不是等他在运行时报错?为此,微软老大哥一直在努力中。 可空上下文 从C#8.0开始,我们可以通过启用可空上下文 阅读全文
posted @ 2022-01-24 14:44 没有星星的夏季 阅读(1100) 评论(0) 推荐(0) 编辑
摘要: 大多数编程语言都支持显示转换,也称为强制转换,它与隐式转换相呼应,比如,一般的,整型可以通过隐式转换成浮点型,而浮点型需要通过强制转换成整型: int i = 32; double d = i;//整型隐式转换成浮点型 int j = (int)d;//浮点型显示转换成整型 目前,C#中可用的隐式转 阅读全文
posted @ 2021-12-27 12:42 没有星星的夏季 阅读(1206) 评论(0) 推荐(0) 编辑
摘要: 你是否考虑过这个问题:为什么不同类型之间的变量可以赋值,而不需要强制转换类型?如: int i = 1; long l = i; object obj = 1; Exception exception = new ArgumentNullException(); Array array = new 阅读全文
posted @ 2021-12-09 20:12 没有星星的夏季 阅读(1733) 评论(0) 推荐(1) 编辑
摘要: C#的类型转换分为显式转换和隐式转换,显式转换需要自己声明转换类型,而隐式转换由编译器自动完成,无需我们声明,如: //long需要显式转换成int long l = 1L; int i = (int)l; //int可以隐式的转换成long int i = 1; long l =; 我们还可以自定 阅读全文
posted @ 2021-11-29 17:06 没有星星的夏季 阅读(408) 评论(0) 推荐(0) 编辑
摘要: 从C#9.0开始,我们有了一个有趣的语法糖:记录(record) 为什么提供记录? 开发过程中,我们往往会创建一些简单的实体,它们仅仅拥有一些简单的属性,可能还有几个简单的方法,比如DTO等等,但是这样的简单实体往往又很有用,我们可能会遇到一些情况: 比如想要克隆一个新的实体而不是简单的引用传递 比 阅读全文
posted @ 2021-11-19 18:05 没有星星的夏季 阅读(15185) 评论(22) 推荐(42) 编辑
摘要: ref表示引用的意思,C#中它有多种用法,这里简单总结一下: 1、按引用传递参数 具体可见:C#中的值传递与引用传递(in、out、ref) 2、引用局部变量 引用局部变量指的是在变量声明时使用ref关键字(或者使用ref readonly表示未只读),表示这个变量是另一个变量的引用,而不是值对象的 阅读全文
posted @ 2021-10-25 10:34 没有星星的夏季 阅读(28280) 评论(4) 推荐(15) 编辑
摘要: 在C#中,方法、构造函数可以拥有参数,当调用方法或者构造函数时,需要提供参数,而参数的传递方式有两种(以方法为例): 值传递 值类型对象传递给方法时,传递的是值类型对象的副本而不是值类型对象本身。常用的一个例子: public struct MyStruct { public int Value { 阅读全文
posted @ 2021-10-25 10:32 没有星星的夏季 阅读(13487) 评论(0) 推荐(17) 编辑
摘要: 快速启动一个consul集群可以参考:使用docker快速部署一个consul集群 .net core集成使用consul是通过consul提供出来api接口来实现的,可以分成两个部分来说明:配置集成、服务注册。 代码比较多,已上传到gitee上了,地址见:https://gitee.com/sha 阅读全文
posted @ 2021-09-06 14:20 没有星星的夏季 阅读(1507) 评论(0) 推荐(3) 编辑
摘要: 作为一个开发者,有时候需要一个集群环境,之前的做法要么就是使用多个虚拟机,要么就是采用不同的端口来模拟,但是虚拟机比较占内存,而且启动慢,采用不同的端口来模拟,管理起来比较麻烦一些,程序隔离性差一些。 docker的出现让我们可以在一台虚拟机上模拟构建出来一个几乎完全隔离的集群,本文提供一种快速构建 阅读全文
posted @ 2021-08-13 15:35 没有星星的夏季 阅读(1927) 评论(0) 推荐(1) 编辑
摘要: Options是.net core提出的一种辅助配置机制,即选项。 目前,我们可以使用的Options有五种(源码): IOptionsFactory<>:Options的创建工厂(Singleton),所有的Options均使用它仅限创建,可以使用名称创建指定名称的Options IOptions 阅读全文
posted @ 2021-08-03 17:20 没有星星的夏季 阅读(354) 评论(0) 推荐(1) 编辑
上一页 1 2 3 4 5 6 7 ··· 10 下一页