C#接口

作者:追风剑情 发布于:2021-1-29 9:33 分类:C#

接口对一组方法签名进行了统一命名。接口允许定义事件、无参属性、有参属性(C#的索引器)。所有这些东西本质上都是方法,它们只是语法上的简化。不过,接口不能定义任何构造器方法,也不能定义任何实例字段。 虽然CLR允许接口定义静态方法、静态字段、常量和静态构造器,但符合CLS标准的接口绝不允许,因为有的编程语言不能定义或访问它们。事实上,C#禁止接口定义任何一种这样的静态成员。 ...

阅读全文>>

标签: C#

评论(0) 浏览(2026)

委托

作者:追风剑情 发布于:2021-1-22 9:20 分类:C#

委托: 官方文档 本章要讨论回调函数。回调函数是一种非常有用的编程机制,它的存在已经有很多年了。Microsoft.NET Framework 通过委托来提供回调函数机制。不同于其他平台(比如非托管C++)的回调机制,委托的功能要多得多。例如,委托确保回调方法是类型安全的(这是 CLR 最重要的目标之一)。委托还允许顺序调用多个方法,并支持调用静态方法和实例方法。 一、...

阅读全文>>

标签: C#

评论(0) 浏览(2014)

System.Collections.Generic.List<T>

作者:追风剑情 发布于:2021-1-21 17:38 分类:C#

System.Collections.Generic.List<T>的方法总结 List<T>类官方文档 List<T>扩展方法官方文档 using System; using System.Collections.Generic; using System.Linq; using System.Text; using ...

阅读全文>>

标签: C#

评论(0) 浏览(2550)

可空值类型

作者:追风剑情 发布于:2021-1-18 10:47 分类:C#

一、可空值类型介绍 我们知道值类型的变量永远不会为 null:它总是包含值类型的值本身。事实上,这正是“值类型”一词的由来。遗憾的是,这在某些情况下会成为问题。例如,设计数据库时,可将一个列的数据类型定义成一个 32 位整数,并映射到 FCL(Framework Class Library)的 Int32数据类型。但是,数据库中的一个列可能允许值为空;也就是说,该列在某一行上允许没有任...

阅读全文>>

标签: C#

评论(0) 浏览(1983)

约束执行区域(CER)

作者:追风剑情 发布于:2021-1-14 9:26 分类:C#

许多应用程序都不需要健壮到能从任何错误中恢复的地步。许多客户端应用程序都是这样设计的,比如 Notepad.exe(记事本)和 Calc.exe(计算器)。另外,我们中的许多人都经历过Microsoft Office 应用程序(比如 WinWord.exe, Excel.exe 和 Outlook.exe)因为未处理的异常而终止的情况。此外,许多服务器端应用程序(比如 Web 服务器)都是无状态的...

阅读全文>>

标签: C#

评论(0) 浏览(3226)

事件

作者:追风剑情 发布于:2021-1-12 16:07 分类:C#

示例一:自定义事件类 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApp16 { class Program { /...

阅读全文>>

标签: C#

评论(0) 浏览(2042)

WPF介绍

作者:追风剑情 发布于:2021-1-8 17:22 分类:C#

WPF官方文档 1、xaml与隐藏代码如何关联? 在xaml中通过设置x:Class来关联代码类,在代码类中的构造方法中调用InitializeComponent()方法来整合控件元素。 2、按功能分类的 WPF 控件 下面列出了内置的 WPF 控件: ● 按钮: Button 和 RepeatButton 。 ● 数据显示: DataGrid 、 L...

阅读全文>>

标签: C#

评论(0) 浏览(1788)

托管堆和垃圾回收

作者:追风剑情 发布于:2021-1-7 17:34 分类:C#

一、托管堆基础 每个程序都要使用这样或那样的资源,包括文件、内存缓冲区、屏幕空间、网络连接、数据库资源等。事实上,在面向对象的环境中,每个类型都代表可供程序使用的一种资源。要使用这些资源,必须为代表资源的类型分配内存。以下是访问一个资源所需的步骤。 1.调用 IL 指令 newobj,为代表资源的类型分配内存(一般使用 C# new 操作符来完成)。 2.初始化内存,设置...

阅读全文>>

标签: C#

评论(0) 浏览(2277)

WPF—TreeView

作者:追风剑情 发布于:2020-12-23 17:44 分类:C#

xaml <Window x:Class="DataEditor.JsonWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" ...

阅读全文>>

标签: C#

评论(0) 浏览(1971)

程序集加载和反射

作者:追风剑情 发布于:2020-12-17 13:46 分类:C#

.NET Framework中的动态编程 .NET中的反射 巴科斯-诺尔范式(BNF)语法 重要提示  .NET Framework 4.5引入了新的反射API。旧的API缺点太多。例如,它对LINQ的支持不好。内建的策略对某些语言来说不正确,有时不必要地强制加载程序集,而且为很少遇到的问题提供了过于复杂的API。新API解决了所有这些问题。但至少就.NE...

阅读全文>>

标签: C#

评论(0) 浏览(5309)

Base64

作者:追风剑情 发布于:2020-12-4 17:50 分类:C#

using System; using System.Text; /// <summary> /// Base64加密解密 /// </summary> public sealed class Base64 { /// <summary> /// 加密 /// </summary> public s...

阅读全文>>

标签: C#

评论(0) 浏览(2065)

AppDomain

作者:追风剑情 发布于:2020-10-29 9:19 分类:C#

一、AppDomain CLR COM服务器初始化时会创建一个AppDomain。AppDomain是一组程序集的逻辑容器。CLR初始化时创建的第一个AppDomain称为“默认AppDomain”,这个默认的AppDomain只有在Windows进程终止时才会被销毁。 除了默认AppDomain,正在使用非托管COM接口方法或托管类型方法的宿主还可以要求CLR创建额外的A...

阅读全文>>

标签: C#

评论(0) 浏览(2838)

CLR寄宿

作者:追风剑情 发布于:2020-10-28 9:55 分类:C#

公共语言运行库 (common language runtime,CLR) 是托管代码执行核心中的引擎。       .NET Framework在Windows平台的顶部运行。这意味着.NET Framework必须用Windows能理解的技术来构建。首先,所有托管模块和程序集文件都必须使用Windows PE文件格式,而且要么是Windows EXE文...

阅读全文>>

标签: C#

评论(0) 浏览(3173)

深度拷贝对象

作者:追风剑情 发布于:2020-9-22 14:58 分类:C#

using System; using System.IO; using System.Runtime.Serialization; using System.Runtime.Serialization.Formatters.Binary; namespace ConsoleApp6 { class Program { static void M...

阅读全文>>

标签: C#

评论(0) 浏览(1964)

日志工具类—LogUtil

作者:追风剑情 发布于:2020-9-3 10:42 分类:C#

using System; using System.Text; using System.IO; namespace UNetwork { /// <summary> /// 日志工具类 /// </summary> public sealed class LogUtil { private ...

阅读全文>>

标签: C#

评论(0) 浏览(2796)

GZip压缩

作者:追风剑情 发布于:2020-9-1 12:03 分类:C#

using System; using System.Text; using System.IO.Compression; using System.IO; /// <summary> /// GZip算法比较适合压缩大量文本数据 /// 不适合压缩图片(压缩后反而会变大) /// </summary> public static class GZipU...

阅读全文>>

标签: C#

评论(0) 浏览(2131)

C#调用C++接口

作者:追风剑情 发布于:2020-6-28 18:01 分类:C#

一、VS新建C++空项目 CTestDll.h #ifndef __CTEST_DLL_H #define __CTEST_DLL_H // 声明为C编译、链接方式为外部函数 extern "C" _declspec(dllexport) int _cdecl add(int* x, int* y); extern "C" _declspec(dllexp...

阅读全文>>

标签: C#

评论(0) 浏览(2712)

ObjectDataProvider

作者:追风剑情 发布于:2020-5-6 13:48 分类:C#

通过ObjectDataProvider可以实现数据源与方法绑定 App.xml <!-- 引入System命名空间 clr-namespace:System;assembly=mscorlib--> <Application x:Class="WpfTest1.App" xmlns="http://schemas.m...

阅读全文>>

标签: C#

评论(0) 浏览(2671)

消息队列

作者:追风剑情 发布于:2020-1-14 11:10 分类:C#

示例: MessageQueue.cs using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace NotifyServer { /// <su...

阅读全文>>

标签: C#

评论(0) 浏览(1838)

Lambda表达式

作者:追风剑情 发布于:2020-1-9 13:57 分类:C#

Lambda表达式(C# 编程指南) System.Linq.Expressions 示例 using System; using System.Collections.Generic; using System.Linq; using System.Linq.Expressions; using System.Text; using System.Threadi...

阅读全文>>

标签: C#

评论(0) 浏览(2483)

操作系统防火墙

作者:追风剑情 发布于:2019-12-12 21:57 分类:C#

示例 using System; using System.Net; using System.Net.NetworkInformation; using System.Text; //64位系统: 需要引入C:\Windows\SysWOW64\FirewallAPI.dll //32位系统: 需要引入C:\Windows\System32\FirewallAPI.dll ...

阅读全文>>

标签: C#

评论(0) 浏览(2804)

示例:计算屏幕分辨率比例

作者:追风剑情 发布于:2019-12-12 14:37 分类:C#

一、创建WPF项目 MainWindow.xaml <Window x:Class="Resolution.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.co...

阅读全文>>

标签: C#

评论(0) 浏览(2791)

Powered by emlog  蜀ICP备18021003号-1   sitemap

川公网安备 51019002001593号