自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(125)
  • 收藏
  • 关注

原创 客户端日志和异常处理

使用Serilog记录日志;利用AOP统一处理异常

2023-03-29 18:15:59 437

原创 客户端软件中显示报警信息的实现探讨

使用容器解耦系统报警信息的输出

2023-03-28 14:04:42 467

原创 sqlserver快捷键设置

2021-10-17 11:16:06 1279

原创 使用Graphics生成高质量小图(缩略图)

本例中,对于不规则的宽高,进行了裁剪,保留中心内容/// <summary> /// 生成高质量小图 /// 参考:https://blog.csdn.net/lhtzbj12/article/details/54099246?spm=1001.2014.3001.5501 /// </summary> /// <param name="originalImageLocalPath">原图本地全路径

2021-10-17 10:33:11 729

原创 自定义控件中,对非托管资源的一种管理方式

使用缓存机制管理,参考winform中DataGridView中管理非托管资源的方式。 下面以画刷和字体两种非托管资源的维护为例public class MyUserControl : UserControl { // 定义非托管资源缓存集合 private Hashtable m_brushesCache; private Hashtable m_fontCache; public MyUserControl(

2021-10-17 10:20:21 154

原创 sqlserver中利用存储过程打印出指定表的实体类

CREATE PROC [dbo].[sp_createEntity] @tableName NVARCHAR(128)AS DECLARE @tableID INT; DECLARE @columnName NVARCHAR(64); DECLARE @dataType NVARCHAR(64); DECLARE @isNullable BIT; DECLARE @columnDesc NVARCHAR(256) = ''; DECLARE @colu.

2021-10-17 09:58:28 725

原创 sqlserver中打印出指定表的信息(字段、备注、索引、约束信息等)

CREATE procedure [dbo].[sp_helpex] @objname nvarchar(256) = NULL -- object name we're afterasbegin set nocount on set @objname=replace ( @objname , '[' , '' ) set @objname=replace ( @objname , ']' , '' ) -- @objname must be either sysobjects or sy.

2021-10-17 09:53:04 1230

原创 sqlserver中打印出指定存储过程的生成脚本

CREATE PROC [dbo].[sp_viewProcScript] @procName NVARCHAR(128)AS set nocount on set @procName=replace ( @procName , '[' , '' ) set @procName=replace ( @procName ,']' , '' ) declare @text nvarchar(4000); select row_number() over(order by b.col.

2021-10-17 09:44:53 561

原创 winform根据不同屏幕分辨率(DPI) ,调整界面尺寸

/// <summary> /// 根据屏幕缩放情况,将尺寸转换成适合屏幕缩放的合适大小 /// 可以解决win7系统 125%缩放情况下显示不全的问题 /// </summary> /// <param name="value">原始尺寸</param> /// <returns>转换后的尺寸</returns> public static...

2021-10-17 09:26:08 3219

转载 锁为什么建议是只读的

c# - Why does the lock object have to be readonly? - Stack Overflow

2021-09-01 10:00:10 88

转载 sqlserver查找用到某个字段的所有存储过程

SELECT obj.Name, sc.TEXT FROM syscomments sc INNER JOIN sysobjects obj ON sc.Id = obj.ID WHERE sc.TEXT LIKE '%' + 'DeductAmount' + '%' -- ContestCount为所要查询的字段AND TYPE = 'P'z

2021-06-04 08:58:49 342

转载 <![CDATA[]]>和转义字符

转自:<![CDATA[]]>和转义字符 - catgatp - 博客园 (cnblogs.com)被<![CDATA[]]>这个标记所包含的内容将表示为纯文本,比如<![CDATA[<]]>表示文本内容“<”。  此标记用于xml文档中,我们先来看看使用转义符的情况。我们知道,在xml中,”<”、”>”、”&”等字符是不能直接存入的,否则xml语法检查时会报错,如果想在xml中使用这些符号,必须将其转义为实体,如”&lt;”

2021-04-07 10:16:49 541

原创 C#利用HtmlAgilityPack实现简单爬虫

1.下载HTML:public static string DownloadHtml(string url) { HttpWebRequest request = HttpWebRequest.Create(url) as HttpWebRequest; request.Timeout = 30 * 1000; // 30s超时 request.UserAgent = "Mozilla/5.0 (Windows

2021-03-28 16:45:06 389 1

原创 C# 获取当前程序运行路径

方式一:winform项目中:System.Windows.Forms.Application.StartupPath;方式二:控制台项目:System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase

2021-03-25 14:31:37 308

原创 linux安装mysql

1.先查看linux的glibc版本,命令ldd --version

2021-03-19 14:43:59 277

原创 虚拟机安装Linux+Linux配置telnet、ssh登录

1.Linux开始SSH端口,以便客户端远程Linux主机https://www.cnblogs.com/jxldjsn/p/10644686.html

2021-03-16 21:51:44 550

原创 Windows系统安装MySql全流程

一.下载1.社区版下载路径:https://dev.mysql.com/downloads/,选择MySQL Installer for Windows:点进去提供两种安装方式,一种是在线安装,一种是正常安装,这里选择正常安装:选择下载:

2021-03-15 09:47:32 196

转载 Git忽略提交规则 - .gitignore配置运维总结

转自:Git忽略提交规则 - .gitignore配置运维总结 - 散尽浮华 - 博客园 (cnblogs.com)在使用Git的过程中,我们喜欢有的文件比如日志,临时文件,编译的中间文件等不要提交到代码仓库,这时就要设置相应的忽略规则,来忽略这些文件的提交。简单来说一个场景:在你使用git add .的时候,遇到了把你不想提交的文件也添加到了缓存中去的情况,比如项目的本地配置信息,如果你上传到Git中去其他人pull下来的时候就会和他本地的配置有冲突,所以这样的个性化配置文件我们一般不把它推送到git

2021-03-10 09:27:01 120

原创 sqlserver将多个select的结果合并成一张表

select * from(select Name as 第一列 from dbo.Test where ID = 1) as c1,(select Name as 第二列 from dbo.Test where ID = 2) as c2,(select Name as 第三列 from dbo.Test where ID = 3) as c3

2021-03-03 11:09:55 4561 1

转载 C#多线程--信号量(Semaphore)

百度百科:Semaphore,是负责协调各个线程, 以保证它们能够正确、合理的使用公共资源。也是操作系统中用于控制进程同步互斥的量。Semaphore常用的方法有两个WaitOne()和Release(),Release()的作用是退出信号量并返回前一个计数,而WaitOne()则是阻止当前线程,直到当前线程的WaitHandle 收到信号。这里我举一个例子让大家更容易理解:当我们这样实例化Semaphore时候Semaphore sema = new Semaphore(x,y)有一队.

2021-03-03 09:26:51 419

原创 Visual Studio2019安装vsix扩展文件

除了在Visual Studio上安装扩展,还可以手动安装本地已有的vsix扩展文件,具体操作如下:cmd 命令切换到Visual Studio2019程序目录,也就是VSIXInstaller.exe程序所在目录,然后输入:VSIXInstaller.exe(空格)vsix文件全路径;按回车进入安装界面;...

2021-02-28 15:47:11 12852 1

原创 C#在方法注释中添加客跳转到其他方法的链接

/// <summary> /// <see cref="Test2"/> for more. /// </summary> private void Test() { } private void Test2() { }

2021-02-20 18:33:49 830 1

转载 sentry文档

.NET | Sentry Documentation

2021-02-09 15:59:37 1905

转载 转:谁能详细说一下程序中使用 async await的好处吗?

谁能详细说一下程序中使用 async await的好处吗?_博问_博客园 (cnblogs.com)

2021-02-09 15:03:37 111

原创 ROW_NUMBER() OVER (PARTITION BY 列1 ORDER BY 列2)

ROW_NUMBER() OVER (PARTITION BY 列1ORDER BY 列2)根据列1分组,在分组内部根据列2排序

2021-02-05 14:56:31 188

转载 .Net性能测试工具BenchmarkDotnet

转自:.Net性能测试工具BenchmarkDotnet_郑廿三-CSDN博客_benchmarkdotnet

2021-01-22 14:32:28 352

转载 5 种避免使用 C# lock 关键字的方法

转自:林明基 5 种避免使用 C# lock 关键字的方法 - 知乎 (zhihu.com)提起多线程编程,始终离不开线程安全(资源竞争)的问题。如果没有处理好这些问题,往往在会出现开发一时爽,调试火葬场的情况。大都数语言中都会提供一些特定的方法来简化多线程开发,比如 C# 就提供了 lock 关键字来解决这些问题。如果你在开发的过程中正确的使用了 lock 关键字,将有效的避免许多线程安全的问题。但是任何解决方案都是存在代价的,一味使用 lock 的话也会照成意想不到的性能(逼格)损失...

2021-01-22 14:19:16 620

原创 关于EF多线程更新数据的一个报错

报错信息:Store update, insert, or delete statement affected an unexpected number of rows (0). Entities may have been modified or deleted since entities were loaded.存储更新,插入或删除语句影响了意外的行数(0)。自加载实体以来,实体可能已被修改或删除。原因:线程1中被标记为删除的元素,在SaveChanges的时候发现在数据库里已经不存在

2021-01-22 13:56:54 1578

原创 C#利用静态泛型缓存 和 表达式树实现高效的深拷贝

/// <summary> /// 提供对象或集合的深拷贝(拷贝private/public:实例成员、属性、静态成员) /// </summary> /// <typeparam name="T">对象类型或集合元素类型</typeparam> public class DeepCopyHelper<T> where T : class, new() { /// <summa...

2020-11-15 10:03:14 961

转载 程序以系统管理员身份运行

1、在Visual Studio 中--解决方案资源管理器--右键项目名称--属性,找到“安全性”选项,勾选“启用ClickOnce安全设置”:2、这时,在项目下面会多出一个“app.manifest”的文件,选中它,并找到代码段<requestedExecutionLevel level="asInvoker" uiAccess="false" />,将其改为:<requestedExecutionLevel level="requireAdministrato.

2020-11-15 10:00:17 172

原创 解压RAR文件

/// <summary> /// 解压RAR文件 /// </summary> /// <param name="rarFilePath">要解压的文件路径</param> /// <param name="unrarDestPath">解压路径(绝对路径)</param> private static void UnRAR(string...

2020-10-23 10:09:33 149

转载 并发 并行 同步异步 多线程区别

请参见原文:https://blog.csdn.net/woliuyunyicai/article/details/45165869本文只是摘录自原文1、并发和并行的区别可由上图形象指出两者的区别:1)定义:并发:在操作系统中,是指一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都是在同一个处理机上运行,但任一个时刻点上只有一个程序在处理机上运行。并行:在操作系统中,一组程序按独立异步的速度执行,无论从微观还是宏观,程序都是一起执行的。来个比喻:并发和并行的

2020-10-10 10:47:44 229

转载 HandleProcessCorruptedStateExceptions属性,Net4.0的异常处理新特性

参考;https://www.cnblogs.com/killmyday/archive/2010/09/05/1818533.html

2020-08-16 09:29:34 2672

原创 EF在中间过程中可能会查询并没有指定(select)的字段

猜测:当select的字段涉及表中大部分字段 + 多表通过主键join。这种情况下,EF会在中间过程中,将这几张表的所有字段一并查出来。所以,有些情况下,EF中的linq语句虽然没有select某个字段,EF内部还是会查询这个字段。这种机制也引发一种问题:如果实体中加了某个字段,但是数据库中没有这个字段,那么可能导致EF查询失败,会提示没有这个列。...

2020-07-22 12:07:19 863

原创 VS合并Git分支

origin代表远端,即将远端的master合并到本地dev分支,使用远端代码的原因是,本地代码可能不是最新的

2020-07-17 17:26:46 4971

原创 UI异步调用服务后回调可以这样写

2020-07-16 14:35:36 103

转载 关于inner join left join联查过滤条件放在on还是where中的问题

转自https://blog.csdn.net/yunyishang123/article/details/80631622

2020-07-14 10:40:36 560

原创 JSON数组结构

[ { "name":"小明", "age":23, "gender":"男" }, { "name":"小红", "age":21, "gender":"女" }]

2020-07-14 10:21:54 615

原创 为DataGridview单独某一列设置对齐样式

this.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft; //整体左对齐m_regionColumn.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;//指定列右对齐样式继承:顺序靠前的设置会覆盖靠后的设置:https://docs.microsoft.com/zh-cn/dotnet/framework/w.

2020-07-08 13:49:28 1579

转载 项目文件即.csproj文件中的一些节点属性介绍

https://docs.microsoft.com/zh-cn/visualstudio/msbuild/common-msbuild-project-properties?view=vs-2019

2020-07-08 09:53:25 677

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除