C#
A_post
这个作者很懒,什么都没留下…
展开
-
静态构造函数
静态构造函数是C#的一个新特性,其实好像很少用到。不过当我们想初始化一些静态变量的时候就需要用到它了。这个构造函数是属于类的,而不是属于哪里实例的,就是说这个构造函数只会被执行一次。也就是在创建第一个实例或引用任何静态成员之前,由.NET自动调用。 class SimpleClass{ // Static constructor static SimpleCl转载 2012-07-14 14:06:08 · 406 阅读 · 0 评论 -
C# Socket网络编程精华篇
我们在讲解Socket编程前,先看几个和Socket编程紧密相关的概念:TCP/IP层次模型 当然这里我们只讨论重要的四层 01,应用层(Application):应用层是个很广泛的概念,有一些基本相同的系统级TCP/IP应用以及应用协议,也有许多的企业应用和互联网应用。http协议在应用层运行。 02,传输层(Tanspot):传输层包括UDP和转载 2017-10-17 22:12:04 · 552 阅读 · 0 评论 -
多线程分析讲解 --------转:C# Thread
引言1.理解多线程2. 线程异步与线程同步3.创建多线程应用程序3.1通过System.Threading命名空间的类构建3.1.1异步调用线程3.1.2并发问题3.1.3线程同步3.2通过委托构建多线程应用程序3.2.1线程异步3.2.2线程同步3.3BackgroundWorker组件4.总结转载 2017-10-14 20:55:50 · 374 阅读 · 0 评论 -
C#中的多线程使用 -- Thread 类
现在C#已经建议摈弃使用 Suspend, Resume 暂停/恢复线程, 也尽量少用 Abort方法中断一个线程.建议使用线程的同步手段有: Mutex、ManualResetEvent、AutoResetEvent, Monitor.下面再对此进行详细描述.Thread类的构造函数有2类: 一种是不带参数(ThreadStart 委托) -- public Thread(转载 2017-10-14 21:05:21 · 633 阅读 · 0 评论 -
C# suspend sleep join 区别
sleep方法是个静态方法,由thread类来调用。它只能暂停当前线程,不能暂停其他线程。它接受的参数指名这个线程需要休眠多少时间。suspend方法是普通方法,由对象调用,他不但能够终止当前线程,还能够终止其他线程。与 Thread.Sleep 不同,Thread.Suspend 不会使线程立即停止执行。公共语言运行库必须一直等待,直到线程到达安全点之后它才可以将该线程挂起。如果线程尚未转载 2017-10-14 21:22:41 · 1164 阅读 · 0 评论 -
C#中的多线程使用 -- Thread 类: 使用回调函数从一个线程中检索数据
下面为一个完整的实例:using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading;namespace conThreadCallBack{ class Program { static void Main(str转载 2017-10-14 21:25:08 · 2456 阅读 · 0 评论 -
保证应用程序只运行一个实例[c#]
使用 互斥Mutex 保证应用程序只运行一个实例, 代码如下:sing System;using System.Collections.Generic;using System.Linq;using System.Windows.Forms;using System.Threading;using System.Runtime.InteropServices;name转载 2017-10-14 21:47:53 · 528 阅读 · 0 评论 -
ManualResetEvent用法 多线程 启动 暂停 通知 通信
ManualResetEvent用法转之:http://blog.tom.com/blog/read.php?bloggerid=313638&blogid=13505Thread and Sync In C# (C#中的线程与同步)别相信别人告诉你的所有的事。其实C#中的线程是很简单的。线程是程序中的控制流程的封装。你可能已经习惯于写单线程程序,也就是,程序在它们的代码中一次转载 2017-10-15 00:50:58 · 298 阅读 · 0 评论 -
.net 多线程
受托管的线程与 Windows线程必 须要了解,执行.NET应用的线程实际上仍然是Windows线程。但是,当某个线程被CLR所知时,我们将它称为受托管的线程。具体来说,由受托管的代 码创建出来的线程就是受托管的线程。如果一个线程由非托管的代码所创建,那么它就是非托管的线程。不过,一旦该线程执行了受托管的代码它就变成了受托管的 线程。一个受托管的线程和非托管的线程的区别在于,CLR转载 2017-10-15 12:03:32 · 1316 阅读 · 0 评论 -
C#委托的异步调用
本文将主要通过“同步调用”、“异步调用”、“异步回调”三个示例来讲解在用委托执行同一个“加法类”的时候的的区别和利弊。 首先,通过代码定义一个委托和下面三个示例将要调用的方法:/*添加的命名空间using System.Threading;using System.Runtime.Remoting.Messaging;*/ public delegate int转载 2017-10-15 12:56:58 · 500 阅读 · 0 评论 -
介绍托管程序与非托管程序的区别
介绍托管程序与非托管程序的区别 本文主要介绍托管程序与非托管程序的概念,以及两者之间的区别。希望对你有帮助,一起来看。AD:【线下活动】三大新锐HTML 5企业汇聚51CTO—大话移动前端技术托管代码是一microsoft的中间语言,他主要的作用是在.NET FRAMEWORK的CLR执行代码前去编译源代码,也就是说托管代码充当着翻译的作用。下面介绍托管代码和非转载 2017-10-15 17:47:50 · 439 阅读 · 0 评论 -
《JAVA与模式》之策略模式
《JAVA与模式》之策略模式在阎宏博士的《JAVA与模式》一书中开头是这样描述策略(Strategy)模式的: 策略模式属于对象的行为模式。其用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。策略模式的结构 策略模式是对算法的包装,是把使用算法的责任和算法本身分割开来,转载 2017-11-16 21:17:23 · 266 阅读 · 0 评论 -
c#改变图片大小和限定文件大小
/// <summary> /// 生成缩略图 /// </summary> /// <param name="serverImagePath">图片地址</param> /// <param name="thumbnailImagePath">缩略图地址</param>转载 2018-04-17 19:17:09 · 3015 阅读 · 1 评论 -
C# png格式图像转jpg时透明背景变为黑色问题
Image img = Image.FromFile(filename);// Assumes myImage is the PNG you are convertingusing (var b = new Bitmap(img.Width, img.Height)) { b.SetResolution(img.HorizontalResolution, img.VerticalResol...转载 2018-04-12 14:04:32 · 3474 阅读 · 1 评论 -
C# 打印 api 操作属性设置,DocumentProperties
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Runtime.Int...转载 2018-04-13 15:09:39 · 2112 阅读 · 3 评论 -
C#实现无物理边距真正可打印区域的绘图\打印程序开发
经常在开发实际的应用程序中,需要用到图形绘制和打印程序。如何实现完整的精确打印和绘图是需要注意许多细节地方的。最近在遇到打印问题的时候,仔细研究一阵,总结这篇博文,写得有点杂乱,看文要还请费点神。基本功能:窗体绘图与鼠标交互 打印预览与打印输出开发平台:VisualStudio 2010 (C#)1绘图坐标系统1.1绘图系统坐标转换(屏幕窗口/打印机) 绘图程序涉及到多种坐标系统,总体上可分为...转载 2018-04-23 21:46:33 · 1461 阅读 · 0 评论 -
C#静态常量和动态常量的区别
C#拥有两种不同的常量:静态常量(compile-time constants)和动态常量(runtime constants)。它们有不同的特性,错误的使用不仅会损失效率,还可能造成错误。相比之下,静态常量在速度上会稍稍快一些,但是灵活性却比动态常量差很多。 //静态常量(隐式是静态的)public const int compiletimeConstant = 1;//动态常量public...转载 2018-05-23 14:39:01 · 876 阅读 · 0 评论 -
C# 日期(datetime)格式化大全
1、DateTime.Now.ToString("yyyy年MM月dd日 dddd")输出结果格式为:2009年02月03日 星期二2、DateTime.Now.ToString("dddd yyyy年MM月dd日")输出结果格式为:星期二 2009年02月03日3、DateTime.Now.ToString("yyyy年MM月dd日")输出结果格式为:2009年02月03日转载 2013-11-18 16:58:04 · 1216 阅读 · 0 评论 -
生成缩略图 and 压缩
//生成缩略图函数 //顺序参数:源图文件流、缩略图存放地址、模版宽、模版高 //注:缩略图大小控制在模版区域内 public static void MakeSmallImg(System.IO.Stream fromFileStream, string fileSaveUrl, System.Double templateWidth, System.Double templateH转载 2013-05-13 17:30:59 · 752 阅读 · 0 评论 -
MonoDroid学习笔记(一)—— 搭建MonoDroid开发环境及Hello World
分类: MonoDroid 2011-03-30 21:05 8546人阅读 评论(42)收藏 举报近年来,移动应用得到广泛发展,尤其是基于Android与IOS的应用如雨后春笋般爆发。我一直都想涉足这一块的开发,但身为一个.Net开发人员,要从新开始学习Java或ios,时间成本的耗费无疑是巨大的。那么能不能使用.Net来进行Android或IOS的开发呢?Novel转载 2012-08-09 20:53:21 · 531 阅读 · 0 评论 -
控制字符串长度(中英文保持一致) .
#region 控制字符串长度 /// /// 替换超出规定长度字符串为"..." /// /// 实际取出的字符串 /// 规定的长度,单位为byte /// 替换后的字符串 public static string substr(string str, int len) {转载 2012-07-30 11:29:15 · 1308 阅读 · 0 评论 -
接口 调用
using System; namespace ClassLibrary2 { interface IEmploy //接口 { void Speak(); //方法 } class Hello:IEmploy //Hello类实现接口 { public void Speak() //实现方法 { Console.WriteLine转载 2012-08-29 18:42:48 · 508 阅读 · 0 评论 -
C#定义属性-静态属性
C#静态属性可以是读写属性,只读属性,只写属性中的任意一种。也就是说,静态属性可以同时包含set访问器和get访问器,也可以只包含其中一种。静态属性定义方式就是在属性前加static关键字,语法如下: static 数据类型 属性名{get{}set{}}静态访问器适用于整个类,而不是类的实例。静态属性中的set{},get{}访问器只能访问类的静态成员。静态属性可以通转载 2012-08-20 23:11:26 · 779 阅读 · 0 评论 -
C#中双问号(??)在检测Null方面的带来的方便
最近接到一个维护项目,发现里面超多BUG,基本都是NullReferenceException突然想起C#中有个双问号(??)的单元运算符,用于解决这个问题实在是方便的很。 首先,既然双问号(??)是一个单元运算符,那么其左右两边数据类型必须是相同类型或能隐形转换类型的。它表示的意思是,首先检测左边的值,若其为Null,那么整个表达式取值为右侧的值,否则为左侧的值。 例如:转载 2012-08-22 11:21:28 · 4240 阅读 · 2 评论 -
ASP.NET 如何实现伪静态 url重写路由功能
2010-12-04 13:54 ASP.NET 如何实现伪静态 其实所谓的伪静态页面,就是指的URL重写.1.首先在web.config里写view plaincopy to clipboardprint? 2.在web.config里添加以下节点view plaincopy to clipboardprint转载 2012-08-22 16:19:52 · 1045 阅读 · 0 评论 -
System.Nullable<T> int?
C#中怎么也引入了这样一个概念呢——“空属类型”,定义在值类型上,从此值类型摇身一变,也可以为空了,其实这个“空”也不是“真空”,怎么听起来这么矛盾,直观理解,“空Null”本身也是值的一种,可以被赋给值类型的变量了,实现这个想法和泛型有着不解之源:.空属类型允许一个值类型具有“空值”意义,从而方便很多场合的运算,如数据库的空字段。.空属类型实际上是一个泛型类型System.Nullabl转载 2012-09-06 22:40:41 · 1883 阅读 · 0 评论 -
C#部分方法定义
C#部分方法定义部分类也可以定义部分方法。部分方法在部分类中定义,但没有方法体,在另一个部分类中执行。在这两个部分类中,都要使用partial关键字。public partial class MyClass{partial void MyPartialMethod();}public partial class MyClass{partial void转载 2012-09-08 21:02:38 · 595 阅读 · 0 评论 -
LINQ to SQL 之DataContext用法
DataContext作为LINQ to SQL框架的主入口点,为我们提供了一些方法和属性,本文用几个例子说明DataContext几个典型的应用。创建和删除数据库CreateDatabase方法用于在服务器上创建数据库。DeleteDatabase方法用于删除由DataContext连接字符串标识的数据库。数据库的名称有以下方法来定义:如果数据库在连接字符串中标识,则使用转载 2012-09-08 21:56:17 · 2497 阅读 · 0 评论 -
1、调用基类中的重名方法 Base用法
1、调用基类中的重名方法[csharp] public class Person { protected string ssn = "444-55-6666"; protected string name = "John L. Malgraine"; public virtual void GetInfo()转载 2012-09-08 22:44:51 · 1128 阅读 · 0 评论 -
连接字符串中的integrated security=true的意思是什么
每次在讲到这个地方的时候,我都会提问。也经常有朋友回答不上来。integrated security=true 的意思是集成验证,也就是说使用Windows验证的方式去连接到数据库服务器。这样方式的好处是不需要在连接字符串中编写用户名和密码,从一定程度上说提高了安全性。那么到底是用哪一个Windows身份呢?很多朋友说,使用当前用户的身份吧?这个回答不能算错,至少在Windows应用程序中转载 2012-09-15 00:24:13 · 615 阅读 · 0 评论 -
C#中关于String.Equals(object,object)和(object==object )的比较
情况一string s = "Test";string t = string.Copy(s);Console.WriteLine(s == t); Console.WriteLine((object)s == (object)t);输出为true false情况二string s = "Test";string t = s;Console.WriteLine(转载 2012-10-13 12:12:18 · 992 阅读 · 0 评论 -
用C#制作 个性化窗体 winform 界面
G.H.C博客园首页博问闪存新随笔联系订阅 随笔-71 文章-0 评论-0 用C#制作 个性化窗体 winform 界面引言:谁都希望自己的应用程序能让人留下一个深刻的印象,让自己的程序窗体有一件与众不同的"外衣"是一个好办法。试想:在一大堆的普通窗口中突然跳出一个很酷的界面,一定能让人眼睛一亮进而产生兴趣的。转载 2012-10-22 00:04:20 · 3630 阅读 · 0 评论 -
Sockey
最近浏览了几篇有关Socket发送消息的文章,发现大家对Socket Send方法理解有所偏差,现将自己在开发过程中对Socket的领悟写出来,以供大家参考。 (一)架构 基于TCP协议的Socket通信,架构类似于B/S架构,一个Socket通信服务器,多个Socket通信客户端。Socket通信服务器启动时,会建立一个侦听Socket,侦听Socket将侦听到的Socket连接传给转载 2012-11-30 12:45:55 · 738 阅读 · 0 评论 -
c# 保留小数----关于System.Math.Round()的用法
于System.Math.Round(),我想解释下:如System.Math.Round(3.3451, 2)这样的取舍,他就取决于第3个小数位了,只要>=5的 他就输出3.35 否则输出3.34而System.Math.Round(3.3?5, 2)这样的取舍,他就取决于这里的? 如果?是偶数 则不进行五入,而?为奇数的时候,他就五入了如:Dim a As Doubl转载 2013-03-16 18:13:51 · 4930 阅读 · 0 评论 -
C#中反射用法---根据一个字符串,例如“TextBox
C#中反射用法---根据一个字符串,例如“TextBoxpublic static void CreateControl(string controlTypeFullName, Form form, int positionX, int positionY){ try { string assemblyQualifiedName = typeof(System.转载 2013-04-25 09:36:04 · 1446 阅读 · 0 评论 -
Visual Studio 2013 为C#类文件添加版权信息
更改如下目录下的模版文件即可实现添加版权信息功能C:\Program Files\Microsoft Visual Studio 12.0\Common7\IDE\ItemTemplates\CSharp\Code\2052\Class\Class.cs (默认路径)如果安装被更改请到:[安装目录]\Common7\IDE\ItemTemplates\CSharp\Code\2052\Cl...转载 2018-09-11 17:31:09 · 510 阅读 · 0 评论