程序
风中暮雨
这个作者很懒,什么都没留下…
展开
-
RabbitMQ简单应用
最近在网上学习了RabbitMQ,做一下简单的记录,主要实现功能:1、生产者(将待处理任务放入RabbitMQ)2、消费者(将MQ中的数据进行消费)该案例基于.NET5的控制台应用程序,开发工具VS2019。在使用RabbitMQ前需要先从Nuget包添加RabbitMQ引用!!!!然后导入引用:using RabbitMQ.Client;using RabbitMQ.Client.Events;生产者代码:static void Main(string[] args)原创 2021-07-19 10:52:00 · 225 阅读 · 0 评论 -
Visio Studio 中展示当前选中类或窗体代码显示内部方法列表
前段时间在用VS突然发现打开的文件没有导航窗格了,找了很久都没有找到,今天找到了发个博文记录以下:丢失导航窗格前的效果如下图:最后调成的效果如下图:操作步骤如下:打开VS ---》工具---》选项---》文本编辑器---》所有语言---》常规---》在右侧选项中将导航栏勾选上即可展示。...原创 2021-04-26 16:19:52 · 636 阅读 · 0 评论 -
log4net配置
之前遇到过几次添加完log4net.dll的引用之后一直无法写出日志的情况,现在整理并记录一下,方便后续查看。一、添加log4net.dll的引用 1、可通过从网上下载单独的log4net.dll进行添加也可以在项目当中使用Nuget包进行安装 2、添加完引用后需要在程序启动的位置添加配置的初始化(我写的是WPF项目,就以WPF项目为例。 protected override void OnStartup(StartupEventArgs e) { ...原创 2021-03-26 11:29:47 · 648 阅读 · 0 评论 -
C# 更新AssemblyInfo.cs的文件版本号(AssemblyFileVersion)
最近由于单位发布测试密度较大,因此手动更新每个程序集([assembly: AssemblyFileVersion("1.0.0.0")])的版本号,成了很头痛的事情,因此想着能自动在原有的基础上进行累加。 因为每个人用到的版本信息可能不是同一个值,仅以我自己用到的来举例[assembly: AssemblyFileVersion("1.0.0.0")],我修改的是第二位(标红的),话不多说直接上代码:首先是要选取路径(比较简单不进行赘述) 需要使用递归进行逐层进行文件筛...原创 2020-06-01 22:07:54 · 1604 阅读 · 0 评论 -
chart控件X轴(Y轴)数值显示不全
X轴数值显示不全如下图所示: 当添加了 Chart1.ChartAreas["Default"].AxisX.IntervalAutoMode = IntervalAutoMode.VariableCount;时显示的效果如下图:原创 2013-05-30 16:18:12 · 9438 阅读 · 2 评论 -
单个汉字转化为拼音,也可以获取汉字的首个字母
/// /// 单个汉字转化为拼音 /// /// 单个汉字 /// 拼音 public static string SingleChs2Spell(string SingleChs) { byte[] array; int iAsc; string strRtn = string.Empty; array = Enc原创 2013-05-31 17:05:16 · 767 阅读 · 0 评论 -
Winform开发框架之数据即时更新的实现
winform开发中有多种页面间的传值,下面介绍下通过事件进行页面的刷新操作1、Winform开发框架的界面层的继承关系在开篇之前,首先介绍一下Winform开发框架中的界面层的继承关系,首先我把所有窗体区分为三类,一类是普通的窗体,一类编辑窗体,还有一类是列表显示窗体。窗体的集成可以封装处理很多东西,良好的封装和继承,可以为我们提高效率,减少重复代码,它的作用不再在此讨论和强调。采用转载 2013-06-03 15:54:06 · 1442 阅读 · 0 评论 -
c# BackgroundWorker组件介绍(属性、方法、事件)
c# BackgroundWorker组件介绍(属性、方法、事件)在VS2005中添加了BackgroundWorker组件,该组件在多线程编程方面使用起来非常方便,然而在开始时由于没有搞清楚它的使用机制,走了不少的弯路,现在把我在使用它的过程中的经验与诸位分享一下。 BackgroundWorker类中主要用到的有这列属性、方法和事件: 重要属性: 1、Canc转载 2013-06-03 17:33:54 · 939 阅读 · 0 评论 -
PictureBox绑定图片的三种方式
1.绝对路径: this.pictureBox2.Image=Image.FromFile("D:\\001.jpg"); 2.相对路径: Application.StartupPath; 可以得到程序根目录 this.pictureBox2.Image=Image.FromFile(Application.StartupPath "\\1.gif"); 3.获转载 2013-06-27 15:45:10 · 2756 阅读 · 0 评论 -
pictureBox1绑定图片的三种方式
1.绝对路径:this.pictureBox2.Image=Image.FromFile("D:\\001.jpg"); 2.相对路径: Application.StartupPath; 可以得到程序根目录 this.pictureBox2.Image=Image.FromFile(Application.StartupPath "\\1.gif"); 3.转载 2013-06-27 15:42:38 · 4038 阅读 · 0 评论 -
将word文档转化为html(代码)
/// /// 把Word文档转化为Html文件 /// /// word文件名 /// 要保存的html文件名 /// public static bool WordToHtml(string wordFileName, string htmlFileName) {原创 2013-07-01 14:17:28 · 18086 阅读 · 3 评论 -
C#编写windows 服务 安装及卸载
1、 新建一个项目,或者从选择当前解决方案-右键-添加-新建项目2、 选择(项目类型)Visual C#项目,(模板)Windows服务,填写要创建的服务名称,然后按确定按钮。3、 资源管理器中默认创建一个WindowsService1的项目,项目下包括一个Service.cs文件4、 从代码视图切换到设计视图,点鼠标右键选择”添加安装程序”5、 然后转载 2013-08-09 09:21:18 · 1152 阅读 · 0 评论 -
更改windows服务的配置文件(app.config)无需重新启动
这个问题是前一阶段写windows服务碰到的。本来在写获取配置文件的某个配置的值的时候,通常我都是写类似下面的这么一个静态方法来获取: 1: /// 2: /// 获取每次处理记录数 3: /// 4: /// 5: private static int Ge转载 2013-08-16 08:30:09 · 7632 阅读 · 3 评论 -
将数据导出为EXCEL文件
saveFileDialog1.Filter = "*.xls|.xls"; saveFileDialog1.FileName = DateTime.Now.ToShortDateString(); if (saveFileDialog1.ShowDialog() == DialogResult.OK)原创 2012-12-20 18:05:00 · 1412 阅读 · 0 评论 -
Visual Studio2010不能安装Silverlight4_Tools,提示语言不一致
Visual Studio2010不能安装Silverlight4_Tools,提示语言不一致天在装Silverlight4_Tools时出现“必须先安装与 Silverlight Tools 4 语言版本相一致的 Visual Studio 2010、Visual Web Developer 学习版 2010 或 Visual Phone Developer 学习版 2010,Silverl...转载 2018-11-14 01:12:03 · 155 阅读 · 0 评论 -
chart控件控制图形的大小和位置
实现这个 主要是对控件的属性进行操作,如果看图有什么不清楚的地方可以留意就行询问。第一步:点击饼图锁定框周围的空白部分或者点击饼图,选中后点击右上角的”小三角“,弹出Chart任务菜单,选择第一项Configure ChartArea:Default, 如果你的Series是被充命名的Default会显示你命名后的值。第二步:当点击第一项后会弹出一个属性框如下图:原创 2013-05-28 15:44:33 · 14965 阅读 · 1 评论 -
设置chart饼图中显示的线,以及显示百分比
chart1.Series["serYearPlay"].Points.DataBindXY(xvar, yvar); chart1.TextAntiAliasingQuality = TextAntiAliasingQuality.High; this.chart1.Series["serYearPlay"].Label = "#VALX (#原创 2013-05-13 17:09:41 · 7011 阅读 · 2 评论 -
Dundas chart 获取饼图上显示的值
//chart控件的 MouseDown事件private void chart1_MouseDown(object sender, MouseEventArgs e) { // Call Hit Test Method HitTestResult result = chart1.HitTest(e.X,原创 2013-04-19 17:57:51 · 1348 阅读 · 0 评论 -
检测TCP端口号是否被占用
string tcpPort = this.txtTCP.Text.Trim(); try { if (tcpPort == "" || tcpPort == null) { this.lblMessage.Text = "";原创 2012-12-05 10:00:12 · 2284 阅读 · 1 评论 -
悲催的SqlServer2008
今天没什么事做,本来打算自己写一个“企业人事管理系统”的。上午费了半天的劲,将数据库的逻辑理清了,开始着手在sql2008中创建,到下午1点左右的时候数据库创建成功(包括其中的表及其关联关系),下午2点开始编写vs(2005)程序,本来想节省时间将sql数据库直接连接在vs中生成实体类的,谁知道当测试连接测试成功后,点击确定时却报了一个错(错误的意思是:无法用较低的vs版本加载比vs版本高的sql原创 2012-12-11 15:27:20 · 443 阅读 · 0 评论 -
最小化窗体的时候,将窗体放到托盘(NotifyIcon)
if (WindowState == FormWindowState.Minimized) { this.Hide(); ExcelNotifyIcon.ShowBalloonTip(15, "提示", "导出提示!", ToolTipIcon.Info); }pri原创 2012-12-28 17:57:13 · 418 阅读 · 0 评论 -
用于将.cs文件 编译成dll文件(补充),如何配置在cmd中使用csc命令
CSC 命令详解 2011-01-11 16:14:22| 分类:C#| 标签:csc命令详解 |字号大中小 订阅C#环境变量设置步骤(这样之后打开CMD就可以直接输入CSC命令):在桌面右击[我的电脑]->[属性]->[高级]->[环境变量] 在下面的系统变量栏点击“新建” 变量名输入“csc” 变量值输入:“C:\WINDOWS\Microsoft.转载 2012-12-18 14:37:21 · 1675 阅读 · 0 评论 -
将16进制值颜色转换为int类型
//在reportControl中将记录的前景色修改为指定颜色 ReportRecord record = axReportControl1.AddRecord(); record[0].Value = ">>培训进修情况"; record[0].Bold = true; record[0原创 2012-12-20 14:34:38 · 3456 阅读 · 0 评论 -
名称以无效字符开头。
”名称以无效字符开头.处理http://localhost/webservice/test.aspx是出错“问题解决办法:刚刚学习webservices,很多东西都不懂。写了个最简单的例子,在vs2005下直接按ctrl+F5便可运行,可是拷贝到iis目录下执行却提示出错【名称以无效字符开头。处理资源 'http://localhost/ws/Service.asmx' 时出错。第 1转载 2013-01-28 14:55:40 · 1201 阅读 · 0 评论 -
C#多线程学习(二) 如何操纵一个线程
下面我们就动手来创建一个线程,使用Thread类创建线程时,只需提供线程入口即可。(线程入口使程序知道该让这个线程干什么事)在C#中,线程入口是通过ThreadStart代理(delegate)来提供的,你可以把ThreadStart理解为一个函数指针,指向线程要执行的函数,当调用Thread.Start()方法后,线程就开始执行ThreadStart所代表或者说指向的函数。打开你转载 2013-02-21 14:58:24 · 468 阅读 · 0 评论 -
C#多线程学习(三) 生产者和消费者
前面说过,每个线程都有自己的资源,但是代码区是共享的,即每个线程都可以执行相同的函数。这可能带来的问题就是几个线程同时执行一个函数,导致数据的混乱,产生不可预料的结果,因此我们必须避免这种情况的发生。C#提供了一个关键字lock,它可以把一段代码定义为互斥段(critical section),互斥段在一个时刻内只允许一个线程进入执行,而其他线程必须等待。在C#中,关键字lock定义如转载 2013-02-21 14:59:23 · 699 阅读 · 0 评论 -
C#多线程学习(四) 多线程的自动管理(线程池)
在多线程的程序中,经常会出现两种情况:一种情况: 应用程序中,线程把大部分的时间花费在等待状态,等待某个事件发生,然后才能给予响应 这一般使用ThreadPool(线程池)来解决;另一种情况:线程平时都处于休眠状态,只是周期性地被唤醒 这一般使用Timer(定时器)来解决;ThreadPool类提供一个由系转载 2013-02-21 14:59:57 · 435 阅读 · 0 评论 -
C#多线程学习(五) 多线程的自动管理(定时器)
Timer类:设置一个定时器,定时执行用户指定的函数。 定时器启动后,系统将自动建立一个新的线程,执行用户指定的函数。初始化一个Timer对象: Timer timer = new Timer(timerDelegate, s,1000, 1000);// 第一个参数:指定了TimerCallback 委托,表示要执行的方法;// 第二个参数:转载 2013-02-21 15:00:34 · 555 阅读 · 0 评论 -
C#多线程学习(六) 互斥对象
如何控制好多个线程相互之间的联系,不产生冲突和重复,这需要用到互斥对象,即:System.Threading 命名空间中的 Mutex 类。我们可以把Mutex看作一个出租车,乘客看作线程。乘客首先等车,然后上车,最后下车。当一个乘客在车上时,其他乘客就只有等他下车以后才可以上车。而线程与Mutex对象的关系也正是如此,线程使用Mutex.WaitOne()方法等待Mutex对象被释放,如果它转载 2013-02-21 15:01:54 · 451 阅读 · 0 评论 -
[C# 基础知识系列]专题三:如何用委托包装多个方法——委托链
引言: 上一专题介绍了下编译器是如何来翻译委托的,从中间语言的角度去看委托,希望可以帮助大家进一步的理解委托,然而之前的介绍都是委托只是封装一个方法,那委托能不能封装多个方法呢?因为生活中经常会听到,我代表大家的意见等这样的说话,既然委托也是一个代表,那他如果只能代表一个人,那他的魅力就不是很大了吧,所以我们就会委托能不能代表多个方法的? 答案是可以的,这就是本专题要讲的内容——委托链,委托链转载 2013-02-22 17:54:50 · 2431 阅读 · 0 评论 -
[C# 基础知识系列]专题二:委托的本质论
引言:上一个专题已经和大家分享了我理解的——C#中为什么需要委托,专题中简单介绍了下委托是什么以及委托简单的应用的,在这个专题中将对委托做进一步的介绍的,本专题主要对委本质和委托链进行讨论。一、委托的本质 平时我们很容易使用委托——用C# delegate关键字定义委托,再用new操作符构造委托实例,然后通过调用委托实例来调用回调方法(就是用一个了委托对象的变量来代替方法名,这句话如转载 2013-02-22 17:40:10 · 549 阅读 · 0 评论 -
CodeJock如何通过vs编译成两个dll文件
CodeJock如何通过vs编译成两个dll文件?例如:一个Codejock.SkinFramework.v12.0.0.ocx 编译完成之后就是AxInterop.XtremeSkinFramework.dll 和Interop.XtremeSkinFramework.dll这个是怎么操作的呢 (听说是vs上自带一个工具可以实现这个,但是本人没有找到、用的是vs2005)?原创 2013-03-12 17:15:15 · 1454 阅读 · 0 评论 -
winform 程序打包
winform 程序打包,并将mysql数据库安装包也打包进去,安装时先检测机器上是否安装mysql,如果安装了就直接安装程序,否则先安装mysql!原创 2012-12-03 15:28:58 · 716 阅读 · 1 评论