.Net

Linux-Centos8 部署.net core项目

部署.NETCore运行时必要前提在安装.NETCore前,需要注册Microsoft签名秘钥并添加Microsoft产品提要,每台机器只需要注册一次,执行如下命令:sudorpm-Uvhhttps://packages.microsoft.com/config/rhel/7/packages-microsoft-pr...

C#、ASP、ASP.NET、.NET 区别

.NET是微软公司下的一个开发平台,可以理解为是框架或者运行环境,在这个平台下可以用不同的语言进行开发。.net的运行机制:各种语言(c#,F#,j#等对应的源程序)——>经过CLS,CTS第一次编译——>统一规范语言(中间语言)MSIL(.EXE,.DLL)——>JIT第二次编译——>二进制语...
代码星球·2021-02-19

C#基础知识之Double加减出现误差

今天出现一个问题,235844.46-230000相减,得出的结果出乎意料,出来的结果如截图:看到这个结果大感意外,尝试更改数值试试:把235844.46更改为235844.47,然后235844.47-230000=5844.47,咦,居然正常了。把把235844.46更改为235844.45,然后235844.45...

.Net Core中使用Quartz.NET

Quartz.Net是根据Java的Quartz用C#改写而来,Quartz.NET是一个开源的作业调度框架,非常适合在平时的工作中,定时轮询数据库同步,定时邮件通知,定时处理数据等。 Quartz.NET允许开发人员根据时间间隔来调度作业。它有很多特征如:数据库支持,集群,插件,支持cron-like表达式...
代码星球·2021-02-19

C# 迭代器、枚举器、IEnumerable和IEnumerator

开始之前先思考几个问题:为什么集合可以使用foreach来遍历不用foreach能不能遍历各元素为什么在foreach中不能修改item的值?要实现foreach需要满足什么条件?为什么LinqtoObject中要返回IEnumerable?可枚举类是指实现了IEnumerable接口的类,比如数组就是可枚举类型;下面...

C#单例模式(Singleton Pattern)

  Singleton模式要求一个类有且仅有一个实例,并且提供了一个全局的访问点。这就提出了一个问题:如何绕过常规的构造器,提供一种机制来保证一个类只有一个实例?客户程序在调用某一个类时,它是不会考虑这个类是否只能有一个实例等问题的,所以,这应该是类设计者的责任,而不是类使用者的责任。从另一个角度来说,Singleto...

C#设计模式

  【吕振宇-设计模式】  【TerryLee-设计模式】  地上本没有路,走得人多了也就成了路。设计模式如同此理,它是经验的传承,并非体系;是被前人发现,经过总结形成了一套某一类问题的一般性解决方案。模式的目标是把共通问题中的不变部分和变化部分分离出来,不变的部分就构成了模式。模式是一个经验提取的“准则”,并且在一次...
代码星球·2021-02-19

C# UML图符号的含义

      可以简单的理解,就是一个类A使用到了另一个类B,而这种使用关系是具有偶然性的、临时性的、非常弱的,但是B类的变化会影响到A;比如某人要过河,需要借用一条船,此时人与船之间的关系就是依赖;------>虚线箭头表示依赖关系(dependency...
代码星球·2021-02-19

C#设计模式-迭代器模式

  迭代器是针对集合对象而生的,对于集合对象而言,必然涉及到集合元素的添加删除操作,同时也肯定支持遍历集合元素的操作,我们此时可以把遍历操作也放在集合对象中,但这样的话,集合对象就承担太多的责任了,面向对象设计原则中有一条是单一职责原则,所以我们要尽可能地分离这些职责,用不同的类去承担不同的职责。迭代器模式就是用迭代器...
代码星球·2021-02-19

.NET IEnumerable和IEnumerator

好文,先记下来,慢慢消化:https://www.cnblogs.com/zhaopei/p/5769782.html我们先思考几个问题:为什么在foreach中不能修改item的值?要实现foreach需要满足什么条件?为什么LinqtoObject中要返回IEnumerable?接下来,先开始我们的正文。.net中...
代码星球·2021-02-19

C#基础知识之const和readonly关键字

在了解这两个关键字的时候我们先来了解一下静态常量和动态常量。指编译器在编译时候会对常量进行解析,并将常量的值替换成初始化的那个值。动态常量的值则是在运行的那一刻才获得的,编译器编译期间将其标示为只读常量,而不用常量的值代替,这样动态常量不必在声明的时候就初始化,而可以延迟到构造函数中初始化。const修饰的常量是属于静...

C#基础知识之base、this、new、override、abstract梳理

base重要用于OOP的多态上,base 关键字用于在派生类中实现对基类公有或者受保护成员的访问,但是只局限在构造函数、实例方法和实例属性访问器中usingSystem;namespaceBaseDemo{classProgram{staticvoidMain(string[]args){Bb=newB();...

C#基础知识之值类型和引用类型、堆和栈、装箱和拆箱

值类型直接存储其值,引用类型存储对值的引用,值类型存在堆栈上,引用类型存储在托管堆上,值类型转为引用类型叫做装箱,引用类型转为值类型叫拆箱。 C#值类型数据直接在他自身分配到的内存中存储数据,而C#引用类型只是包含指向存储数据位置的指针。 C#值类型,我们可以把他归纳成三类:值类型基础数据类型(除s...

C#基础知识之可空类型

C#2.0中引入了可空类型,可空类型是值类型,只是可空类型是包括null的值类型的。如:DateTime?CreateTime=null;上面代码DateTime?就是可空的DateTime类型,然而其实"?"这个修饰符只是C#提供的一个语法糖,其实就是C#2.0提供的可空类型是Nullable<T>,下面...
代码星球·2021-02-19

.NET Linq梳理

本文主要是梳理下Linq知识点,分为两部分,第一部分是收集网上关于Linq比较好的文章,第二部分写下自己的理解  1、Linq之旅:Linq入门详解(LinqtoObjects)  2、30分钟LINQ教程  3、[C#]走进LINQ的世界  4、LINQ图解  5、Linq表达式、Lambda表达式你更喜欢哪个?  ...
代码星球·2021-02-19