![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c#
文章平均质量分 59
力力7
无无
展开
-
使用System.Management获取cpu序列号出现异常
报错:System.Management currently is only supported for Windows desktop applications.Cannot marshal ‘parameter #3’: Cannot marshal a string by-value with the [Out] attribute.原创 2023-01-15 16:16:15 · 1798 阅读 · 1 评论 -
WPF动态生成列(C#)
WPF动态生成列的简易Demo原创 2022-06-17 10:12:53 · 355 阅读 · 0 评论 -
C# Winform窗体中在标题拦上自定义右键时出现的菜单项
转载:自定义右键时出现的菜单项效果图代码源连接:C# Winform窗体中怎么能在标题拦上自定义右键时出现的菜单项?效果图代码#region fields(菜单栏) private const int WM_SYSCOMMAND = 0X112; private const int MF_STRING = 0X0; private const int MF_SEPARATOR = 0X800; private enum SystemM转载 2022-05-24 09:22:40 · 812 阅读 · 1 评论 -
C# 简单的自定义模型映射
开发过程中由于定义了多个给数据模型(视图模型、数据库模型),每次都一个一个字段赋值比较耗时,所以做了个自定义一个映射。因为项目所需要求比较简单所以也没用AutoMapper。使用到的类MapAttribute:映射特性,用于解决不同字段名的映射,且优先于字段名MapHelper:映射特性的操作方法,针对的是映射特性StringExtend:字符串扩展方法ObjExtend:对象扩展方法,映射实现在此方法中类的具体定义MapAttribute 映射特性using System;n.原创 2022-01-20 10:30:01 · 787 阅读 · 0 评论 -
C# Winform调用Show方法后,由于后续线程阻塞,导致窗体显示不全
项目场景:最近项目有个比较占资源的关闭操作,此时如果用户进行其他操作时程序容易出现卡死无响应。因此需要增加个提示框,提醒用户。问题描述:调用Show展示提示框时,会产生界面展示不全。直到关闭流程走完才展示完整。如下图:提示内容不展示。FrmTest _frm = new FrmTest();_frm.TopMost = true;_frm.StartPosition = FormStartPosition.CenterScreen;_frm.Show();Thread.Sleep(10原创 2021-07-10 13:36:33 · 2239 阅读 · 0 评论 -
C# 多播委托与事件
今天在进行开发的时候,有要用到事件。在定义事件时,又感觉可以直接使用委托。感觉两者的效果一样的。。。所以测试下了事件和委托的用法。测试代码using System;using System.Diagnostics;namespace Test{ public class DelegateTest { //================== construct function =================== #region constr.原创 2021-07-03 14:33:08 · 245 阅读 · 0 评论 -
ASP.NET Core自定义配置文件
新建Configuration类库专门获取各个配置信息NuGet安装Microsoft.NETCore.App和Microsoft.AspNetCore.App在类库中新建SysConfig类using System.IO;using Configuration.Model;using Microsoft.AspNetCore.Hosting;using Microsoft.Extensions.Configuration;using Microsoft.Extensions.Depen原创 2021-06-15 16:52:32 · 922 阅读 · 0 评论 -
.net c# 监听文件事件
今天在学习asp.net core 的配置文件相关知识时,了解到AddJsonFile的reloadOnChange参数设置为true则配置文件发生变化后,可以重新加载配置。因为没有这知识,之前做winform端自定义配置时,都是文件启动时加在一次配置,没法实时修改配置后生效。现在记录下来以便以后可以使用。参考 码农阿宇-浅析 .Net Core中Json配置的自动更新asp.net core 配置文件设置 #region Configure 用于定义请求管道中的中间件 ///.原创 2021-06-15 13:27:54 · 671 阅读 · 0 评论 -
通过反射完成连续工作
在上一个公司时,其中有一个项目就是以【通过反射获取所有实现接口的类】方式来实现程序的初始化。由于没人讲解(直接给项目代码),实现类写在好几处,处理的逻辑也更复杂(有调用顺序,是否允许继续,以及适用多个程序集等),无法直接查看引用和转到定义,所以费了些功夫才弄懂。基本逻辑如参考参考:秦林生 c# 通过反射获取所有实现接口的类,并且调用类中的公共方法定义一个接口 IWorknamespace LchCommon.Model.Work{ /// <summary> ///.原创 2021-06-08 14:47:50 · 71 阅读 · 0 评论 -
利用反射自实现表数据转实体数据
接上一篇反射、自定义特性接上上一篇Excel导入导出ExcelHelperusing System.Collections;using System.Collections.Generic;using System.Data;using LchCommon.Helper;namespace LchCommon{ /// <summary> /// 数据表帮助类 /// </summary> public class DataTableE原创 2021-06-08 13:54:13 · 84 阅读 · 0 评论 -
反射、自定义特性
前言最近接手一个winform端的项目,第一次真切体验到,代码会乱和需求不确定,频繁修改的无奈。之前工作经验中项目都会分三层,让我以为所有项目都会这样。而我的接受的项目确是所有代码都写在窗体代码中,不管时数据访问,还是业务处理,都和窗体事件和相关代码混在一起。当开发其他页面时,又要重新开发,没有复用可言。而且一修改,每个位置都要一一找出来进行修改。而且基本没有模型类,原始数据直接用数据表加下标,以及数组进行处理。例如:改DataGridView时,每一次调整列位置,都要修改相应数据赋值(赋值时按下标赋值原创 2021-06-08 13:13:32 · 118 阅读 · 0 评论 -
Excel导入导出ExcelHelper
一个简单的Excel帮助类,只支持数据集和数据表的导入导出。帮助类,放到公共帮助类中CommonEnum 枚举namespace LchCommon{ #region ExcelType Excel类型 /// <summary> /// Excel类型 /// </summary> public enum ExcelType { #region xls 2003 /// <summar.原创 2021-06-07 17:31:44 · 654 阅读 · 0 评论 -
VS下C#个人代码规范
Visual Studio设置(工具-选项)(文本编辑器-c#-代码样式-命名)Pascal(帕斯卡): 大小写形式-所有单词第一个字母大写,其他字母小写。Camel(驼峰式): 大小写形式-除了第一个单词,所有单词第一个字母大写,其他字母小写。类、枚举、属性、方法等直接用Pascal样式接口(前加I)、抽象类和基类(前加Base)、事件(后加EventHandler)、事件参数(后加EventArgs)、委托(后加Delegate)类内公共私有字段使用m_+camel,方法内部临时字段使用_+c原创 2021-06-06 13:36:09 · 440 阅读 · 0 评论 -
WinForm 指示灯
WinForm 指示灯参考:newideas07的博文 ovalshape C# 真正纯WinForm打造指示灯今天一个WinForm项目需要使用到指示灯,由于没在控件属性的圆角设置。原本打算直接切两个图在PictureBox中显示。后来在网上找到 newideas07的博文 ovalshape C# 真正纯WinForm打造指示灯 ,因此根据该博文制作一个指示灯控件,以下为过程及代码。1、新建自定义指示灯控件在项目相应文件夹中 右键-添加-用户控件,输入名称:Lamp,点击确定。2、设原创 2021-05-21 12:40:38 · 7606 阅读 · 8 评论 -
c#Winform记事本双击打开文件
/// /// 关联文件启动运行时载入文件 /// private void InitalizeLoadFile() { string command = Environment.CommandLine;//获取进程命令行参数 //this.Source.AppendTe转载 2015-10-02 18:52:17 · 1203 阅读 · 0 评论 -
实习期间初次使用javascript调用webserver,将html页面提交
所用到的js文件来源于网络:http://pan.baidu.com/s/1qW5SrSw 新建web服务 新建web服务后出现两种文件:.cs和.asmx.asmx的内容只有下面一行WebService 定义是web服务,CodeBehind定义后台代码.cs文件如下(Push(自己添加的)和HelloWorld是该服务提供的方法)/***原创 2015-10-02 18:26:33 · 380 阅读 · 0 评论