随笔分类 -  C#

上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 25 下一页

C#中的is和as的用法及模式匹配
摘要:is运算符 is在C#7.0之前,主要用于检验实例是否是指定的类型,格式: expr is type expr是一个具有值的表达式,type是一个类型。 从C#7.0开始,is表达式将使用模式匹配来操作,格式: expr is pattern expr是一个具有值的表达式,pattern是模式匹配, 阅读全文

posted @ 2022-12-01 15:36 jack_Meng 阅读(2385) 评论(0) 推荐(0) 编辑

C#中的模式匹配
摘要:C#从7.0开始,陆陆续续推出了各种模式匹配,模式是一种特殊的表达式,通过判断给定的值是否满足此表达式而返回true或者false,它就类似于正则表达式的作用。 目前(C#10),可以使用模式匹配的地方有三个: 1、is表达式,从C#7.0开始,is表达式的右边不在只是一个类型,而是一个模式,具体例 阅读全文

posted @ 2022-12-01 15:33 jack_Meng 阅读(779) 评论(0) 推荐(0) 编辑

C#通过 Expression 表达式获取、设置属性名称、属性值
摘要:C# 通过反射获取类属性标识名称 JSON序列化的时候,往往前后端的属性名称回不一样,尤其是再调用第三方接口的时候,为了减少这方便的麻烦,一般我们在自定义实体的时候,回使用数据契约(DataContract) 一旦声明一个类型为DataContract,那么该类型就可以被序列化在服务端和客户端之间传 阅读全文

posted @ 2022-12-01 11:22 jack_Meng 阅读(1625) 评论(0) 推荐(0) 编辑

C#事件获取返回值
摘要:From: http://www.xuebuyuan.com/841530.html 在讲如何获取多个返回值之前先来看一个小例子: private void button1_Click(object sender, EventArgs e){ int Number = 200; //设置Number 阅读全文

posted @ 2022-11-24 09:10 jack_Meng 阅读(952) 评论(0) 推荐(0) 编辑

C#如何反射出委托的签名,反射调用委托
摘要:本文阐述C#中如何反射出委托的签名,假如我们有委托FooDelegate定义如下 delegate double FooDelegate (string param, bool condition); 那么我们怎么用反射知道这个委托的签名是: 一个string类型的参数param、一个bool类型的 阅读全文

posted @ 2022-11-23 16:24 jack_Meng 阅读(315) 评论(0) 推荐(0) 编辑

使用MSIL采用Emit方式实现C#的代码生成与注入常用代码
摘要:本文主要使用微软提供的一套C#的API函数,通过这些API函数,可以对已经编译过的.Net体系生成的EXE,DLL文件进行修改,而不是修改源码编译的方式,来完成新功能的加入、或者原有功能的修改。这个方式可以应用于修改没有源码DLL或EXE文件、批量修改或插入代码功能到DLL或EXE文件中。 背景介绍 阅读全文

posted @ 2022-11-22 16:48 jack_Meng 阅读(475) 评论(0) 推荐(1) 编辑

MessagePack 和System.Text.Json 序列号 反序列化对比
摘要:本博客将测试MessagePack 和System.Text.Json 序列号 反序列化性能 项目文件: Program.cs代码: using BenchmarkDotNet.Running; using Demo; var summary = BenchmarkRunner.Run<Serial 阅读全文

posted @ 2022-11-14 09:08 jack_Meng 阅读(113) 评论(0) 推荐(0) 编辑

使用 AssemblyLoadContext 加载和卸载程序集
摘要:准备俩个项目 第一个是控制台 第二个项目是类库 类库项目中只有一个示例class,将类库的代码生成dll 并且设置属性为复制到输出目录 using System.Runtime.Loader; var domain = new AssemblyLoadContext("DomainServer", 阅读全文

posted @ 2022-11-14 09:06 jack_Meng 阅读(353) 评论(0) 推荐(0) 编辑

如何在.NET程序崩溃时自动创建Dump?
摘要:今天在浏览张队转载文章的留言时,遇到一个读者问了这样的问题,如下图所示: 首先能明确的一点是"程序崩溃退出了是不能用常规的方式dump的",因为整个进程树都已经退出。现场已经无法使用常规的方式读取到。 一般来说常规的方法是没办法读取到的,也有一些特殊的方式,比如有关部门在调查取证时,就可以通过一些工 阅读全文

posted @ 2022-11-10 16:53 jack_Meng 阅读(120) 评论(0) 推荐(0) 编辑

.NET性能优化-是时候换个序列化协议了
摘要:计算机单机性能一直受到摩尔定律的约束,随着移动互联网的兴趣,单机性能不足的瓶颈越来越明显,制约着整个行业的发展。不过我们虽然不能无止境的纵向扩容系统,但是我们可以分布式、横向的扩容系统,这听起来非常的美好,不过也带来了今天要说明的问题,分布式的节点越多,通信产生的成本就越大。 网络传输带宽变得越来越 阅读全文

posted @ 2022-11-10 16:51 jack_Meng 阅读(158) 评论(0) 推荐(0) 编辑

网页实现串口TCP数据通讯的两种方案
摘要:概述 串口和TCP数据通讯客户端的形式比较多,但是网页中用的比较少。 其实最大的是网页无法访问本地资源造成的,可能是出于安全方面考虑吧。 解决方案也不是没有,这里介绍几种供大家参考。 ​ 方案一:专用工具 先说重要的 这种方案必须使用专用的浏览器工具,你可以使用网页技术来开发软件,但必须在本工具内使 阅读全文

posted @ 2022-11-04 09:51 jack_Meng 阅读(607) 评论(0) 推荐(0) 编辑

无法将delegate(委托)转换为泛型类型T
摘要:为什么我们不能将委托的实例强制转换为通用类型T? 考虑一个实用程序方法CreateDelegate,它创建一个T实例,它是一个委托,即从MulticastDelegate派生的类型。 T CreateDelegate<T>() {… } 不幸的是,泛型不允许将T约束到从MulticastDelega 阅读全文

posted @ 2022-10-29 20:31 jack_Meng 阅读(116) 评论(0) 推荐(0) 编辑

使用delegate给方法传递参数,或返回delegate对象
摘要:第一次在博客园写文章。 最近遇到一个问题,用到了多线程,以前用的时候线程启动时不需要传递参数,可现在需要时却被难了一把。。 还是先说说delegate吧 delegate是C#中的一种类型,它实际上是一个能够持有对某个方法的引用的类。与其它的类不同,delegate类能够拥有一个签名(signatu 阅读全文

posted @ 2022-10-29 16:35 jack_Meng 阅读(222) 评论(0) 推荐(0) 编辑

类型参数的约束--Where的使用
摘要:类型参数的约束(C# 编程指南) 本文内容 使用约束的原因 约束多个参数 未绑定的类型参数 类型参数作为约束 notnull 约束 class 约束 default 约束 非托管约束 委托约束 枚举约束 类型参数实现声明的接口 另请参阅 --> 约束告知编译器类型参数必须具备的功能。 在没有任何约束 阅读全文

posted @ 2022-10-28 16:02 jack_Meng 阅读(71) 评论(0) 推荐(0) 编辑

C#根据Type获取默认值
摘要:简单的获取某变量类型的默认值 在c#中为我们提供了default(),但是default的参数是具体的类名, 如何根据变量类型的Type获取默认值Code如下: public static object DefaultForType(Type targetType) { return targetT 阅读全文

posted @ 2022-10-28 11:32 jack_Meng 阅读(169) 评论(0) 推荐(0) 编辑

C#重写(Override)详解
摘要:目录: 一.重写的概念: 二.重写的原因: 1.调用子类继承父类中的方法: 2.子类与父类有同名的方法: 3.对其继承的方法进行隐藏: 三.重写的目的: 四.重写的规则: 五.重写的前提以及好处: 一.重写的概念: 既然想明白重写,首先肯定得了解它的概念,那么一起来看看究竟什么是重写呢? 重写:在父 阅读全文

posted @ 2022-10-27 11:09 jack_Meng 阅读(5232) 评论(0) 推荐(1) 编辑

C#判断类是否继承某个类或接口
摘要:C#判断某个类是否派生某个类或是否实现了某个接口 is和as is关键字可以确定对象实例或表达式结果是否可转换为指定类型。基本语法: ? 1 expr is type 如果满足以下条件,则 is 语句为 true: expr 是与 type 具有相同类型的一个实例。 expr 是派生自 type 的 阅读全文

posted @ 2022-10-21 10:06 jack_Meng 阅读(3367) 评论(0) 推荐(0) 编辑

C#开源资源大汇总
摘要:一、AOP框架 Encase 是C#编写开发的为.NET平台提供的AOP框架。Encase 独特的提供了把方面(aspects)部署到运行时代码,而其它AOP框架依赖配置文件的方式。这种部署方面(aspects)的方法帮助缺少经验的开发人员提高开发效率。 NKalore是一款编程语言,它扩展了C#允 阅读全文

posted @ 2022-10-14 15:44 jack_Meng 阅读(554) 评论(0) 推荐(0) 编辑

WPF播放音频使用的SoundPlayer和MediaPlayer
摘要:WPF中,最简单最容易播放音频的方式是使用SoundPlayer类。它是.NET Framework 2.0的一部分,是对Win32 PlaySound API的封装。 它具有以下限制: 1)仅支持.wav音频文件; 2)不支持同时播放多个音频(任何新播放的操作将终止当前正在播放的); 3)无法控制 阅读全文

posted @ 2022-09-23 10:38 jack_Meng 阅读(1030) 评论(0) 推荐(0) 编辑

从事故到项目质量保障的思考
摘要:近期发生了几件事故,第一件是封禁设备的事故,在后台有张页面,只要输入指定的设备号,就能禁止在该手机上登录。 问题就出在这个输入框,因为这个输入框什么也不填,点击按钮,也能发起禁用的接口。 有些用户记录中,设备号是空的,那么这些记录就会被命中,从而导致这些用户的账号被莫名禁用。 这么敏感的操作,居然没 阅读全文

posted @ 2022-06-01 17:48 jack_Meng 阅读(54) 评论(0) 推荐(0) 编辑

上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 25 下一页

导航