摘要:
上一节探讨和学习了:使用 donet new 命令创建一个控制台程序 ASP.NET Core 应用: 一个ASP.NET Core应用构建在ASP.NET Core框架之上。 ASP.NET Core框架利用一个消息处理管道,完成对HTTP请求的监听、接收、处理和最终的响应。 ASP.NET Co 阅读全文
摘要:
使用如下命令: $ donet new console -n HelloWorld 创建一个项目名为 HelloWorld 的控制台程序。 创建好的项目包含如下文件和目录: ☆ 对于传统的 .NET Framework 应用而言,即便是一个空的 C# 语言项目,定义该项目的 .csproj 文件在内 阅读全文
摘要:
整理要点 前言 继承的类型 实现继承 访问修饰符 接口 is和as运算符 前言 面向对象(Object-Oriented, OO): C#不是一种纯粹的面向对象编程语言。 C#提供了多种编程范例。 然而,面向的对象是C#的一种重要概念,也是.NET提供的所有库的核心原则。 面向对象的三大重要概念:封 阅读全文
摘要:
初入学习。。。 比较杂乱的概念理论: 领域驱动设计(DDD)是教我们如何做好软件的,同时也是教我们如何更好地使用面向对象技术的。 它为我们提供了设计软件的全新视角,同时也给开发者留下了一大难题:如何将领域驱动设计付诸实践? DDD是对传统的以数据为中心的建模方式的反思结果。 领域驱动设计(DDD)是 阅读全文
摘要:
扩展方法是静态方法,属于类的一部分,但实际没有放在类的源代码中。 包含静态扩展方法的类也必须是静态的。 定义和使用如下: 1 /// <summary> 2 /// 表示颜色的枚举 3 /// </summary> 4 public enum Color 5 { 6 Red, 7 Black 8 } 阅读全文
摘要:
partial关键字允许吧类、结构、方法或接口放在多个文件中。 假设以下User类被一分为二: User.cs 1 public abstract class BaseUser 2 { 3 protected BaseUser(string id) 4 { 5 Id = id; 6 } 7 publ 阅读全文
摘要:
枚举是一个值类型,包含一组命名的变量。 使用关键字enum定义,例如: public enum Color { [Description("红色")] Red, [Description("黄色")] Yellow, [Description("黑色")] Black } 枚举默认从0开始,也可以指 阅读全文
摘要:
一般来说,引用类型(类)的变量可以为空,而值类型(结构)的变量不能为空。 但使用可空类型是可以使值类型为空。 使用,只需要在类型的后面添加"?"。例如: 1 int a = 0; // 一般情况下值类型要么是合法赋值的值或者是类型的默认值 2 int? b = null; // 使用可空类型可以将值 阅读全文
摘要:
在C# 7.2中添加了in修饰符,保证发送到方法中的数据不会更改(在传递值类型时)。 例如以下代码: 1 /// <summary> 2 /// 结构C 3 /// 值类型 4 /// </summary> 5 public struct C 6 { 7 public int X { get; se 阅读全文
摘要:
解决方法如果返回多个值,但可能类型不同的问题。 假设一个将整数字符串转为整数的方法。 代码如下: var number = int.Parse("2"); // 结果:2 var number2 = int.Parse("Hello"); // 报错,与期望传递的值不匹配:只能传递整数类型的字符串 阅读全文