C#
深圳-吴迪
这个作者很懒,什么都没留下…
展开
-
记录一次JSON转换DateTime多了8多小时
经过排查发现是Newtonsoft.Json转换成Json后多8个时间,只针DateTime类型,如果是用字符串类型保存的日期则不影响。原创 2022-07-21 09:09:56 · 964 阅读 · 0 评论 -
MethodDecorator.Fody 使用方法
Compile time decorator pattern via IL rewriting.This is an add-in forFodyIt is expected that all developers using Fodybecome a Patron on OpenCollective.See Licensing/Patron FAQfor more information.UsageSee alsoFody usage.NuGet installation...转载 2022-04-08 16:19:18 · 477 阅读 · 0 评论 -
检查字符串中是否包含Sql注入关键字
public class SqlInjectHelper{ /// <summary> /// /// </summary> private static List<Regex> regices; /// <summary> /// /// </summary> static SqlInjectHelper() { regices = new List.原创 2021-12-29 08:43:51 · 1298 阅读 · 0 评论 -
调式模型绑定为null
原创 2021-08-24 11:09:16 · 77 阅读 · 0 评论 -
C#引用类型为什么还要加上ref,加与不加有什么不同?
1.加了ref相当把真正的内存地址传入函数,在函数里的任何修改都会影响这个变量, 如果不加ref就相当于再建一个新变量指针指向原内存地址,如果传的参数是对象,那么对此对象 的任何操作除了赋值都会改变原变量,但赋值操作就不行,如果传参数是值类型,那么在子函数中 的任何操作都不会改变原变量的值看如下代码:class A{ public int c;}private static void test(A a){ a.c = 11; a = new A()...原创 2021-04-07 14:58:56 · 1658 阅读 · 0 评论 -
NET PDB文件到底是什么?
PDB全称Program Database,不知道中文翻译叫什么。相信使用过VS的人对于这个拓展名的文件不会陌生,这个文件主要会存储对应模块(dll或者exe)内部的所有符号,以及符号对应的地址、文件名和行号。这个文件会在我们调试的时候被使用到,这个东西可以理解为调试的时候应用程序和源文件之间的一个桥梁。正是归功于这个文件,我们才能在debug的时候看到程序当前执行相对应的代码和监视到一些变量。PDB文件什么时候产生?PDB文件是在我们编译工程的时候产生的,它是和对应的模块(exe或dll)一起转载 2021-04-07 09:22:04 · 275 阅读 · 0 评论 -
.NET WinForm跨线程访问控件三种方式
public partial class Form1 : Form{ int index = 0; public Form1() { // 方法1 //System.Windows.Forms.Control.CheckForIllegalCrossThreadCalls = false; InitializeComponent(); } private void button1_Click(object sende.原创 2021-04-06 16:09:21 · 659 阅读 · 0 评论 -
C# 协变、逆变
总节:协变:父转子,逆变:子转父class Program{ static void Main(string[] args) { IInvariant<Animal> invariantAnimal1 = (IInvariant<Animal>)null; // ok IInvariant<Animal> invariantAnimal2 = (IInvariant<Mammal>)null; // c.原创 2021-04-02 16:22:54 · 93 阅读 · 0 评论 -
设计优雅的API状态值以及错误内容
public class ResultModel{ public ResultModel(object data, RetCodeType retCode) { this.retCode = retCode; this.message = retCode.GetMessage(); this.data = data; } public RetCodeType retCode { get; set; } public .原创 2021-03-24 16:56:02 · 99 阅读 · 0 评论 -
asp.net 导出到excel
//导出全部protected void btnExport_Click(object sender, EventArgs e){ DataView dv = DataSource.DefaultView; Dictionary<string, string> cols = new Dictionary<string, string>(); f...原创 2021-02-24 08:46:12 · 142 阅读 · 0 评论 -
C# 反射性能优化C#
代码可以直接拿来用参考文章:https://www.cnblogs.com/xinaixia/p/5777886.htmlclass Program{ static void Main(string[] args) { ReflectionExample(10000); DelegateExample(10000); DelgateCacheExample(10000); Console.ReadKey()..原创 2021-02-05 09:55:16 · 446 阅读 · 1 评论 -
C# Newtonsoft.Json JsonSerializerSettings配置序列化操作
JsonSerializerSettings常用配置整理1.忽略某些属性2.默认值的处理3.空值的处理4.支持非公共成员5.日期处理(DateFormatHandling)6.自定义序列化的字段名称 7.动态决定属性是否序列化8.枚举值的自定义格式化问题 9.自定义类型转换10.全局序列化设置...转载 2020-03-13 08:52:25 · 916 阅读 · 0 评论