C#
持经达变-智者
这个作者很懒,什么都没留下…
展开
-
微软.netCore源代码查看地址
.netCore 源码查看地址原创 2023-03-01 11:16:05 · 373 阅读 · 1 评论 -
查看c#源码地址
https://referencesource.microsoft.com/原创 2021-05-12 11:45:37 · 895 阅读 · 0 评论 -
AutoMapper 的使用
AutoMapper 的使用首先需要在NuGet中引用AutoMapper的类库install-package AutoMapperinstall-package AutoMapper.Extensions.Microsoft.DependencyInjection然后创建好要进行转换的类public class User{ public int ID { get; set; } public string Name { get; set...转载 2021-02-23 11:26:55 · 428 阅读 · 0 评论 -
powerDesigner 生成实体类模板
最后的template 模版代码如下:.if (%isValidAttribute%)///<summary>[%comment%\n]\///</summary>[%customAttributes%\n]\.if (%Multiple% == false) and (%isIndexer% == false)[%visibility% ][%flags% ]%dataType% %Code%[ = %InitialValue%]{get;set;}.else.原创 2020-11-04 13:33:52 · 665 阅读 · 1 评论 -
vs2019安装包
打开包控制台:工具=>NuGet包管理器=>程序包管理器控制台常用命令(通过tab 键智能感应):Get-Package,可以查看当前项目已安装的包 Find-Package [-Id]可 以通过命令来过滤包 Install-Package 安装包...原创 2020-09-22 09:02:44 · 886 阅读 · 0 评论 -
c# 特性
https://www.cnblogs.com/fnz0/p/11387835.html原创 2020-04-14 22:02:39 · 199 阅读 · 0 评论 -
.Net 网站跨域访问服务端配置
在项服务端的Web.config 文件中的<system.webServer> 节点添加如下节点:<httpProtocol> <customHeaders> <add name="Access-Control-Allow-Headers" value="Content-Type, api_key, Authorizatio...原创 2019-11-06 16:26:01 · 348 阅读 · 1 评论 -
var和dynamic的区别及如何正确使用dynamic?
1.var与dynamic的区别 C#中的很多关键词用法比较容易混淆,var和dynamic就是其中一组,但其实它们是有本质的区别的。var 在编译阶段已经确定类型,在初始化时候,必须提供初始化的值,而dynamic则可以不提供,它是在运行时才确定类型。 1 static void Main(string[] args) 2 { 3 ...转载 2019-05-15 08:45:10 · 294 阅读 · 0 评论 -
webstorm 2018 如何获取验证码
获取注册吗地址(http://idea.lanyus.com/)原创 2019-03-28 16:36:53 · 599 阅读 · 0 评论 -
c# ToString() 格式化 数字、日期时间
DateTime.ToString(format):以下格式只能单独使用,表示特定的格式:d ShortDatePattern D LongDatePattern f 完整日期和时间(长日期和短时间) F FullDateTimePattern(长日期和长时间) g 常规(短日期和短时间) G 常规(短日期和长时间) m、M MonthDayPattern r、R RFC11...原创 2019-03-13 14:23:27 · 3669 阅读 · 0 评论 -
c# 引用动态库路径设置
想必C#的开发者都遇到过这个问题,引用的dll都放在根目录下,随着项目的日益增大,根目录下充满了各种各样的dll,非常的不美观。如果能够把dll按照想要的目录来存放,那么系统就美观多了,以下是我常用的程序各文件的分布: 【3rdLibs】 NLog.dll Newtonsoft.Json.dll …… 【MyLibs】 【Resources】 【Images】 E...转载 2019-03-13 14:10:21 · 8888 阅读 · 0 评论 -
解决devenv.exe应用程序错误,应用程序发生异常
【尝试方法一】初始化Microsoft Visual Studio软件,还原默认值 在cmd中输入初始化VS2010命令: devenv /resetsettings 或者 devenv.exe /resetuserdata 或者 在VS→工具→导入和导出工具→重置所有设置 PS:这种方法一般可以解决问题,但是过了一段时间又会出现同样的错误 【尝试方...转载 2018-11-19 18:50:42 · 13680 阅读 · 0 评论 -
C#-XML文件提取字符串+字符串存为XML文件+创建XML(自定义节点)文件+读取节点内容
一、将字符串写入xml文件(并保存) 写入: XmlDocument xdoc = new XmlDocument(); xdoc.LoadXml(“xmlstring”); 保存: xdoc.Save(“pathsave.xml”)二、将xml文件赋值到字符串 读取xml文件: XmlDocument xdoc = new XmlDocument(); xdoc.Load(“pat...转载 2018-11-16 17:31:19 · 1165 阅读 · 0 评论 -
C# ToLookUp 详解,ToLookUp 和ToDictionary的区别
ToDictionary 和ToLookUp 对 对象集合的操作带来极大的方便,特别是对索引的提供。方便通过 key 来找到相应的键值,ToDictionary 转换成是键值对 关系是一 一 对应的关系 且key 值是唯一的不能重复。微软仿佛意识到ToDictionary 的不足,于是ToLookUp诞生了, ToLookUp 是ToDictionary 的扩展版本,个人理解: ToLo...原创 2018-10-09 16:13:30 · 6514 阅读 · 0 评论 -
Enumerable select 和 selectMany 的区别 以及对元素的过滤
select 的MSDN 解释是 将序列中每一个元素投影到新表中 ;selectMany 将结果投影到IEnumerable<out T> 中 并将结果合并成一个序列。我的理解是 select 的功能就是把集合中元素原样的放到一个 IEnumerable<T> 的集合中,记住是原样不动的,不经过处理的,而selectMany 把元素映射出来 最后再来一个大合并。好啦!废话不...原创 2018-10-09 09:45:13 · 1110 阅读 · 0 评论 -
winForm 窗口最小化后如何自动弹出
//获取父窗体 var parent = this.Parent.TopLevelControl as Form; if (parent != null) { //调整显示模式和设置活动状态 parent.WindowState = FormWindowState.Maximized; p...原创 2018-09-13 15:25:56 · 2631 阅读 · 0 评论 -
C# List 和 string 的互转(以逗号分隔)
List转字符串,用逗号隔开List<string> list = new List<string>();list.Add("a");list.Add("b");list.Add("c");//MessageBox.Show(list.);//LoadModel();string s = string.Join(",", list.ToArray());M转载 2018-09-18 10:08:28 · 34039 阅读 · 1 评论 -
C# webService调用方式-代码直接调用
最近和用友做对接,那边用java 写的一个基于soap 协议的web服务端。由于以前调用使用的是 引用wsdl 文件的方式直接生成 webService 调用类,可是现在wsdl 文件死活都引用不成功,然后给用友那边沟通,人家说没有问题,没办法人家是大爷,问题总得解决吧。好废话不多说,直接干货。 引用 wsdl 文件报的错误 和图片URI file:///E:/项目/2018开发/接口...原创 2018-08-21 10:46:16 · 19802 阅读 · 10 评论 -
c# dynamic关键字
dynamic关键字和动态语言运行时(DLR)是.Net 4.0中新增的功能。什么是"动态"? 编程语言有时可以划分为静态类型化语言和动态类型化语言。C#和Java经常被认为是静态化类型的语言,而Python、Ruby和JavaScript是动态类型语言。 一般而言,动态语言在编译时不会对类型进行检查,而是在运行时识别对象的类型。这种方法有利有弊:代码编写起来更快、更容易,但无法获...转载 2019-05-15 09:29:24 · 239 阅读 · 0 评论 -
c# dynamic关键字以及优势和劣势、类型转换以及Dictionary之间的转换
dynamic 是动态类型,在编译阶段把它当做object 类型(以应付编译器的类型检查),在运行阶段再进行类型检查,(C# 、java 编程语言是静态类型语言,javaScript、python 是动态类型语言,动态类型语言在编译阶段是不进行类型检查的),因此C#静态类型语言既具备静态语音的特性又具备动态语言的灵活,不得不说这是C#的进步。 环境: dynamic 关键字和动态语言运行时 是...原创 2019-05-15 10:52:49 · 9858 阅读 · 0 评论 -
dapper 实体类字段值是object 造成sql 参数变成 SELECT @name WHERE 1 = 0的问题
利用dapper 通过实体类(这个实体类是dynamic类型的) 修改用户表数据, 跟踪的sql 语句如下,exec sp_executesql N' update b_cargoname set name=(SELECT @name WHERE 1 = 0),spell=@spell,bs2=(SELECT @bs2 WHERE 1 = 0),bs6=(SELECT @bs6 WHER...原创 2019-05-15 16:43:08 · 771 阅读 · 0 评论 -
c# 开源界面框架
1. 炫彩界面库XCGUI炫彩界面库不仅是界面库,它是软件界面开发框架,让用户开发桌面软件变的简单高效,它功能丰富, 小巧,安全(所有界面元素无句柄),Unicode字符编码,完善的帮助文档;并且提供了UI设计器,支持XML布局,CSS样式表,XML资源;该库采用C语言开发,速度更快,支持多种开发语言调用,例如C#,易语言; 不需要第三方库的支持,不需要MFC,ATL,和WIND转载 2017-05-13 15:08:18 · 30159 阅读 · 1 评论 -
vs2013 如何安装dapper 框架
通过包管理安装Dapper 无法安装,错误如下原因:因为vs2013通过包管理期搜索出的Dapper 版本是高版本的Dapper,所以才会造成不兼容的问题。解决方法通通过包控制台 输入命令:Install-package dapper -Version 1.50.2...原创 2019-08-21 15:14:09 · 869 阅读 · 0 评论 -
NPOI 生成Excel后打开EXCEL弹出“此文件中某些文本格式可能已经更改,因为它已经超出最多允许的字体数。关闭其他文档再试一次可能有用
利用NPOI 导出Excel 文件后,当用Excel 工具打开后,会提示 “此文件中某些文本格式可能已经更改,因为它已经超出最多允许的字体数。关闭其他文档再试一次可能有用” ,当生成的内容很少是不会提示该错误,当生成多个sheet (220个)就会造成后面单元格样式全部丢失。 解决方法如下: 下面的代码是:每一次生成一个sheet 的时候就会重新创建一个CellStyle ,当...原创 2019-08-21 14:16:26 · 7356 阅读 · 1 评论 -
c# 判断空字符串的效率问题
1、判断空字符串大概有如下方法1、 stirng.IsNullOrEmpty()2、 和 String.IsEmpty 比较3、 和 "" 比较4、 用String.Equal("")比较,字符串变量不能为null,否则报异常,效率次至5、用String.Length == 0 判断,字符串变量不能为null,否则报异常, 效率最高 static void Main(s...原创 2019-07-29 16:40:48 · 738 阅读 · 0 评论 -
C# CallerMemberName 的作用
命名空间:System.Runtime.CompilerServices、作用:允许您获取该方法的调用者方法或属性名称示例using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace Caller...原创 2019-07-06 11:14:03 · 3923 阅读 · 1 评论 -
C# INotifyPropertyChanged 详解
命名空间:System.ComponentModel作用:向客户端发出某一属性值已更改的通知,控件(DataGridView)会反映数据源中的更改而无需重置的绑定,如果使用CallerMemberName特性,则调用NotifyPropertyChanged方法不必将属性名称指定为字符串参数下面是微软给的测试用例using System;using System.Colle...原创 2019-07-06 10:43:35 · 4702 阅读 · 0 评论 -
C# 调用C++ 动态库dll 详解
第一步:新建一个可供调用的C++ 动态库项目第二步:新建 A.h和A.cpp 文件,代码如下1、 A.h 文件代码#ifndef DLL_H_#define DLL_H_#ifdef DLLProvider #define DLL_EXPORT_IMPORT __declspec(dllexport) #else #define DLL_EXPORT_IM...原创 2019-07-11 09:17:07 · 6041 阅读 · 2 评论 -
C# IntPtr 与 string互转
一、IntPtr 与 string互转string StrVal= "test";IntPtr p= Marshal.StringToHGlobalAnsi(StrVal);string result= Marshal.PtrToStringAnsi(p);//最后释放掉Marshal.FreeHGlobal(init);二、char*与string互转stri...原创 2019-07-05 11:55:22 · 3219 阅读 · 0 评论 -
使用Signature Tool自动生成P/Invoke调用Windows API的C#函数声明
如果你的结构体里面包含 TCHAR字符串成员的话,需要考虑ANSI和Unicode DLL的情形。2.如果你的结构体里面包含数组成员,需要考虑定长的数组,而不是对应C#数据类型。3.如果你的结构体里面包含联合体(UNION),需要使用Explict选项,如果联合体里面又包含结构体。4.你还要考虑你的结构体可以同时在32位和64位机上...转载 2019-07-05 11:53:02 · 207 阅读 · 0 评论 -
dump解析入门-用VS解析dump文件进行排障
突然有一天部署在服务器的一个应用挂掉了,没办法只能进入服务器打开【事件查看器】查看下,好不容易找到了打开后一脸懵逼事件查看器查到的内容根本对我们排障没有任何作用。在这个时候如果有对应的dump文件就能派上用场了,只要有dump文件就能查到应用挂掉那刻的一手情报,可能有人认为分析dump文件是非常难的事情,但是最近不断有新的dump分析工具出来,例如...转载 2019-05-27 14:45:50 · 271 阅读 · 0 评论 -
JSON JavaScriptSerializer 进行序列化或反序列化时出错。字符串的长度超过了为 maxJsonLength 属性设置的值
<system.web.extensions><scripting><webServices><jsonSerialization maxJsonLength="1024000" /></webServices></scripting></system.web.extensions>原创 2019-05-15 18:14:27 · 1096 阅读 · 0 评论 -
IEnumerator和IEnumerable详解
IEnumerable 可以枚举的意思,IEnumerator 迭代器 public interface IEnumerable { //返回迭代器,是使用foreach 的前提 [DispId(-4)] IEnumerator GetEnumerator(); } public interface I...原创 2018-08-17 11:01:29 · 731 阅读 · 0 评论 -
C#中yield return用法分析
这篇文章主要介绍了C#中yield return用法,对比使用yield return与不使用yield return的流程,更直观的分析了yield return的用法,需要的朋友可以参考下.本文实例讲述了C#中yield return用法,并且对比了使用yield return与不使用yield return的情况,以便读者更好的进行理解。具体如下:yield关键字用于遍历循环...转载 2018-08-17 09:36:50 · 162 阅读 · 0 评论 -
C# const 与 readonly的区别
笔者也是在看欧立奇版的《.Net 程序员面试宝典》的时候,才发现自己长久以来竟然在弄不清出两者的情况下,混用了这么长的时间。的确,const与readonly 很像,都是将变量声明为只读,且在变量初始化后就不可改写。那么,const与readonly 这两个修饰符到底区别在什么地方呢?其实,这个牵扯出C#语言中两种不同的常量类型:静态常量(compile-time constants)和动态常量...转载 2018-03-07 09:10:12 · 239 阅读 · 0 评论 -
C# 垂直进度条
1. 尝试将ProgressBar的RightToLeft属性设置为System.Windows.Forms.RightToLeft.Yes,同时将RightToLeftLayout属性设置为true,ProgressBar的进度指示将从右向左显示。2. 如何实现一个垂直进度显示的进度条? 自定义VerticalProgressBar类继承ProgressBar,改写属性Crea转载 2018-01-24 16:08:00 · 1729 阅读 · 1 评论 -
30个你必须熟记的CSS选择器
你学会了基本的id,class类选择器和descendant后代选择器,然后就觉得完事了吗?如果这样,你就会错过许多灵活运用CSS的机会。虽然本文提到的许多选择器都属于CSS3,并且只能在现代的浏览器中使用,但学会这些是大有好处的。1. *1234* { margin:0; padding:转载 2017-12-29 11:09:17 · 362 阅读 · 0 评论 -
c#中@的3种作用
1.忽略转义字符例如1string fileName = "D:\\文本文件\\text.txt";使用@后1string fileName = @"D:\文本文件\text.txt"; 2.让字符串跨行原创 2018-01-13 19:10:35 · 398 阅读 · 0 评论 -
div 垂直居中的六种方法
利用CSS进行元素的水平居中,比较简单,行级元素设置其父元素的text-align center,块级元素设置其本身的left 和 right margins为auto即可。本文收集了六种利用css进行元素的垂直居中的方法,每一种适用于不同的情况,在实际的使用过程中选择某一种方法即可。Line-Height Method试用:单行文本垂直居中,demo代码:转载 2017-11-23 15:46:36 · 245718 阅读 · 0 评论 -
sqlServer 更新一列为行号问题
update saver set id=tab.nofrom ( select id ,row_number() over (order by sDate desc, sTime desc) as no from saver ) as tabwhere tab.id = saver.id原创 2017-11-15 15:10:00 · 1734 阅读 · 0 评论