
.Net Core
奇点码农
不看书就跑步,身体和思想总要有一个在路上!
展开
-
.Net6.0系列-8 依赖注入(一)
3.ServiceCollection用来构造容器对象IServiceProvider,调用ServiceCollection的BuliderServiceProvider()创建ServiceProvider,可以用来获取BuliderServiceProvider()之前ServiceCollection中的对象。服务(Service):和框架请求之后返回的一个对象,可以是一个数据库链接,也可以是一个文件处理的方法,或者是数据处理的一个过程方法。服务容器:负责管理注册的服务。原创 2023-04-11 18:14:45 · 2187 阅读 · 1 评论 -
.Net6.0系列-7 .Net 6LinQ(三)常用扩展方法
四 LinQ使用建议:当需要计算大量数据,并需要瞬间完成的时候不建议使用LinQ,如图形处理图片中的每一个像素点的时候,需要瞬间完成,并将图片瞬间显示出来可以使用三元运算符/或者Math/或者自己使用基础算法写。where()的返回集合是Enumerable,返回的是T的全部字段,而Select是可以返回集合的任意需要的字段。一.投影:把集合中的每一项转换为另一种类型使用的是Select()方法。find()是在lamada表达式中的使用,以上两个是LinQ的使用。三 链式编程:多条件一起查询。原创 2023-03-25 16:27:50 · 387 阅读 · 0 评论 -
.Net6.0系列-6 .Net 6LinQ(二)常用扩展方法
LinQ的where返回的IEnumerable,所有的括号中都可以写lamada表达式,list,数组等都可以用LinQ。FirstOrDefault():返回第一条或者默认值,会在没有记录的时候返回null,所以建议在编程的时候使用这个方法。SingleOrDefault():最多只有一条满足要求的数据,0条记录则会返回0或者null,当有多条数据时会报错。Single():有且只有一条数据,First():至少有一条,返回第一条数据,Any():判断集合中是否存在一条数据,返回的是布尔类型。原创 2023-03-25 13:46:39 · 662 阅读 · 0 评论 -
.Net6.0系列-5.Net 6LinQ(一)揭秘及优势
2.Net中定义了泛型委托Action(无返回值)和Func(有返回值),所以一般不用自定义委托类型。二:匿名委托的使用,这里主要是一步一步的从委托类型的写法,转换为Lamada表达式的写法。一.LinQ让数据处理变的简单,但是执行效率不一定最高, 本质就是委托。1.委托是可以指向方法的类型。3.c#中的var是强类型的。原创 2023-03-18 14:14:02 · 288 阅读 · 0 评论 -
.Net6.0系列-4.Net 6及以上异步编程Cancellation以及WhenAll/WhenAnyToken详解(三)
Cancellation详解以及在web开发使用情形,当用户关闭浏览器或者访问别的网页的时候该网页的请求如果在服务器端没有完成的,则服务器会自动终止访问请求,可以节省服务器资源。1.Task WhenAny(IEnumerable tasks):只要tasks中的任何一个Task完成,即可向下执行。2.Task WhenAll(IEnumerable tasks):等待tasks中的Task全部完成,才会向下执行。ThrowIfCancellationRequested():如果任务被取消,就抛出异常。原创 2023-03-12 10:55:15 · 615 阅读 · 0 评论 -
.Net6.0系列-3.Net 6及以上异步编程(二)
一.异步方法不等于多线程,异步方法的代码并不会自动在新线程中执行除非手动将代码放到新线程中二.为什么有的异步没有用async修饰async方法的缺点:1.异步方法会生成一个类,运行效率没有普通方法高 2.可能会占用非常多的线程标明async只是为了更方便的使用await,第二种没有使用async,如果需要将Task的结果拿出来进行操作的时候需要使用async和await三 .为什么尽量少使用Thread.Sleep();原创 2023-03-06 21:30:45 · 538 阅读 · 0 评论 -
.Net6.0系列-2.Net 6及以上异步编程(一)
进行切分为多个状态(swich(){case}),对async方法的调用会被拆分为对MoveNext的调用,await看似等待,经过编译。可用ILSpy反编译器反编译,该代码,可知async的方法会被C#编译器编译成一个类,根据await调用。await调用的等待期间,.Net会把当前的线程返回会给线程池,等异步方法调用执行完毕之后,1.异步方法的返回值一般是Task,T是返回类型,Task,异步方法以Async结尾.框架会从线程池再取出一个线程来执行后续的代码,如果下面的代码sb很短,则不会切换线程,原创 2023-02-25 16:27:11 · 1332 阅读 · 0 评论 -
.Net6.0系列-1.Net 6及以上知识点整理-基础知识
文件发布选项:生成单个文件(只生成一个文件,所有文件封装到一个文件里面 *.exe)/启用readyToRun(启动更快,文件更大)选择独立运行时–>目标运行时:分为可移植的(目标电脑安装框架)与具体目标框架(win/linux/osx(苹果系统))项目上右键点击–>发布–>(设置完成路径设置)…–>点击"完成"–>进入发布界面–>点击"编辑"进入发布配置部署模式可选择:依赖框架(运行电脑需要安装)和独立发布(直接复制到目标电脑即可运行)原创 2023-02-20 15:02:11 · 1203 阅读 · 0 评论