C# - 技术教程文章

C#控制条码打印机 纸张大小,间距,绘制内容(所有条码打印机通用)【代码】

其他条码知识 请访问:http://www.ybtiaoma.com ,本文仅供参考,请勿转载,谢谢using System; using System.Drawing; using System.Drawing.Printing; using System.Runtime.InteropServices; using System.Windows.Forms;/*2014-11-20* 测试打印机 新北洋BTP-2100E Plus 西铁城CLP-S631* 测试结果:页面大小,上间距,左间距都可以正常使用 */namespace PrintingExample {publicpartialclass frnPrinterLabel : Form{public frnPr...

sealed(C# 参考)【代码】

sealed 修饰符可以应用于类、实例方法和属性。密封类不能被继承。密封方法会重写基类中的方法,但其本身不能在任何派生类中进一步重写。当应用于方法或属性时,sealed 修饰符必须始终与 override(C# 参考) 一起使用。在类声明中使用 sealed 修饰符可防止继承此类,例如:sealedclass SealedClass {publicint x; publicint y; }将密封类用作基类或将 abstract 修饰符与密封类一起使用是错误的。结构是隐式密封的;因此它们不能被...

C# 手动读写app config 的源码【代码】

publicclass ConfigOperator{publicstring strFileName;publicstring configName;publicstring configValue;public ConfigOperator(){//// TODO: 在此处添加构造函数逻辑//}publicstring ReadConfig1(string configKey){configValue = "";configValue = ConfigurationSettings.AppSettings[""+configKey+""];return configValue;}//得到程序的config文件的名称以及其所在的全路径publicvoid SetConfigName(string strConfigName){c...

C# 用vs2008连接SQL数据库做动态水晶报表【代码】【图】

博主是个还在上大学的新手,如果有什么说错的地方请务必帮我指出来,谢谢!想要完成一个能够动态改变其中数据的水晶报表,可以通过创建一个 数据的中转站来存储和输出数据的方式。借由这个中转站,我们可以通过为它动态输入数据,然后再将数据导出到水晶报表,来达到得到有动态数据的水晶报表的目的。仅在vs2008中,很多它自带的应用也可以达到中转站的作用,比如数组,数据集等。博主最近刚在学SQL所以尝试了用VS连接数据库来做水...

C# List集合类常用操作【代码】【图】

C# List集合类常用操作 (一)所有操作基于以下类 class Employees{public int Id { get; set; }public string Name { get; set; }public string City { get; set; }public DateTime BirthDate { get; set; }} List()初始化 List 类的新实例,该实例为空并且具有默认初始容量。List<Employees> employees = new List<Employees>(); employees.Add(new Employees { Id = 1, Name = "Nancy.Davolio", City = "Seattle", BirthDate =...

热更新脚本C#light,ulua,Scorpio性能比较

http://www.unity蛮牛.com/thread-32861-1-1.html测试环境: unity4.5.2 三个脚本全是源码导入 PC :处理器 Intel(R) Core(TM) i5-3470 CPU @ 3.20GHz 3.60GHz 内存: 8.00GB 系统 : Windows 7 64位先贴下源码:(注:cls的作者说 cls脚本作用域判断比较厉害 所以利用脚本里面的for循环 可能有点损耗cls的测试结果 更多测试结果请下载源码自行测试) Stopwatch watch = null; { watch =...

C# - 多线程之 异步编程【代码】【图】

异步编程同步编程,请求响应模型,同步化、顺序化、事务化。异步编程,事件驱动模型,以 Fire and Forget 方式实现。异步编程模式 ?-§-?异步编程模型 (APM) 模式: IAsyncResult 模式,异步操作需要 Begin 和 End 方法; ?-§-?基于事件的异步模式(EAP):事件、事件处理程序委托类型和 EventArg 派生类型; ?-§-?基于任务的异步模式(TAP):推荐模式,.NET Framework 4 引入,基于 System.Threading.Tasks 命名空间,利用一种方...

c#转载的

C#做项目时的一些经验分享1、对于公用的类型定义,要单独抽取出来,放到单独的DLL中。2、通过大量定义interface接口,来提高模块化程度,不同功能之间通过实现接口来面向接口编程。3、如果项目中存在很多非常相似,但是又存在一些差异的类,最好的办法是进一步抽象,得到它们的共同基类,将相同点放到基类中实现,然后通过派生类实现差异。使用方根据实际情况决定自己要使用的类。4、项目中,经常会遇到一些全局范围内有且只有一个...

C# 特性详解(转)【代码】

特性(attribute)是被指定给某一声明的一则附加的声明性信息。在C#中,有一个小的预定义特性集合。在学习如何建立我们自己的定制特性(custom attributes)之前,我们先来看看在我们的代码中如何使用预定义特性。 using System; publicclass AnyClass {[Obsolete("Don‘t use Old method, use New method", true)]staticvoid Old( ) { } staticvoid New( ) { }publicstaticvoid Main( ){Old( );} } 我们先来看一下上面这个例子,在...

<C#任务导引教程>练习七

//55,类的声明示例using System;class Date{ public int year; public int month; public int day; public void print() { Console.WriteLine("{0}/{1:D2}/{2:D2}", year, month, day); }}class Program{ static void Main() { Date t = new Date(); Console.Write("请输入年:"); t.year = Convert.ToInt32(Console.ReadLine()); Console.Write("请输入月:...

C# JArray与JObject 的使用

STEP1、using Newtonsoft.Json.Linq; STEP2 如何获取json里的某个属性(节点)值,对其删改,新增 ?12345678910111213141516171819202122232425262728293031323334//2.1 数组用JArray加载 stringjsonText = "[{‘a‘:‘aaa‘,‘b‘:‘bbb‘,‘c‘:‘ccc‘},{‘a‘:‘aa‘,‘b‘:‘bb‘,‘c‘:‘cc‘}]"; varmJObj = JArray.Parse(jsonText); //需求,删除列表里的a节点的值为‘aa‘的项 IList<JToken> delList = newList<JToken...

C#图解教程学习笔记——委托【图】

一、委托概述委托和类一样,是用户自定义类型,也是引用类型。但类表示的是数据和方法的集合,而委托持有一个或多个方法,以及一系列预定义操作。 可以通过以下操作步骤来使用委托:(1)声明一个委托类型。委托声明看上去和方法声明相似,只是没有实现块。(2)使用该委托类型声明一个委托变量。(3)创建委托类型的对象,把它赋值给委托变量。新的委托对象包括指向某个方法的引用,这个方法和第一步定义的签名和返回类型一致。(...

C#基础

.net/dotnet:一般指.NetFramework框架,一种平台,一种技术。c#(sharp):一种编程语言,可以开发基于.net平台的应用。Java:是一种技术,又是一门语言;.net应用  1.桌面应用程序 Winform应用程序开发  2.Internet应用程序 ASP.NET/WebService(网站)  3.手机开发 wp7(嵌入式)  4.wince   架构:    C/S:客户机(Client)/服务器模式(Server)【桌面应用程序】...

(C#基础) ref 和out练习【代码】

对于C#中这两个关键字的用法,常常混淆,有点不清楚,今天又一次看到。遂把它们都记录下来,希望能有所用。这些都是他人写的,我只是搬过来一次,加深印象。 代码 using System; using System.Collections.Generic; using System.Linq; using System.Text;namespace dazilianxi.wenjian {publicclass MoTes:IEnumerable<SanWei>{privatereadonly List<SanWei> _motes;public MoTes(){_motes = new List<SanWei>();}publicvoid A...

C#反射复习

反射能够对数据集中的元数据进行访问。以前当代码编译成机器语言时,关于代码的元数据(例如类型和方法名)都会被丢弃,但当C#编译成CIL时,它会维持关于代码的大部分元数据。利用反射可以找出满足条件的元数据。合理利用反射可以降低代码的耦合性 System.Type访问元数据主要有Type.Name、Type.IsPublic、Type.BaseType等等 typeof、GetType获取数据类型 各种info与get方法访问元数据创建类的实例例子:namespace ConsoleApp1{ ...

C#自定义控件在添加引用后不显示在工具箱的解决方法【图】

先说一些背景:  在开发C#项目时,发现很多控件存在复用的情况,控件的属性都是要设置成一样的,我就想,能不能设置一个类来存放这个控件,这样我每次用的时候直接加一些特殊的操作就可以了,不需要再次设置控件属性。  搜索一段时间,自定义控件是可以满足需求的,它可以开发继承现有控件的自定义控件,这样我就可以封装起来做自己的控件库了。  在完成自定义控件后,我根据MSDN的Demo指导,在另一个项目中添加了这个引用(...

C#7.0新语法【代码】【图】

一、out输出参数在以前使用out输出参数的时候,必须先定义变量,然后才能使用,例如:先定义一个方法,方法参数是out类型的输出参数:1 private void DoNoting(out int x, out int y) 2 { 3 x = 1; 4 y = 2; 5 }以前版本的写法:1 // 必须先定义i、j,才能使用out参数 2 int i = 0; 3 int j = 0; 4 this.DoNoting(out i, out j); 5 Console.WriteLine($"i+j={i+j}"); 在C#7.0中,可以不用先定义,就能够直接使用了:1 th...

C# static成员的构造顺序

熟知的几个原则1.static字段初始化先于static构造函数2.static字段按顺序初始化3.static字段和static构造函数只执行一次 public class Foo { public static Foo Instance = new Foo(); public static int Number=6; public Foo() { Console.WriteLine(Number); } }class Program { static void Main(string[] args) { Console.WriteLine(Fo...

C#取汉字首字母,汉字全拼【代码】【图】

使用类库为https://gitee.com/kuiyu/dotnetcodes/tree/master/DotNet.Utilities/%E6%B1%89%E5%AD%97%E8%BD%AC%E6%8B%BC%E9%9F%B3取首字母 textBox2.Text = PinYin.GetCodstring(textBox1.Text);取汉字全拼EcanConvertToCh toCh = new EcanConvertToCh(); textBox3.Text = toCh.convertCh(textBox1.Text);效果原文:https://www.cnblogs.com/win32pro/p/12736638.html

学习c#老师布置得第一个作业

using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace _10._8{ class Program { static void Main(string[] args) { string bankea = ("您在A银行的存款为:");//赋值银行名称 float a = (1230.56f);//赋值存款 string bankeb = ("您在B银行的存款为:");//赋值银行名 ushort b = (600);//赋值存款 string ...

C#编程总结(三)线程同步【代码】【图】

C#编程总结(三)线程同步在应用程序中使用多个线程的一个好处是每个线程都可以异步执行。对于 Windows 应用程序,耗时的任务可以在后台执行,而使应用程序窗口和控件保持响应。对于服务器应用程序,多线程处理提供了用不同线程处理每个传入请求的能力。否则,在完全满足前一个请求之前,将无法处理每个新请求。然而,线程的异步特性意味着必须协调对资源(如文件句柄、网络连接和内存)的访问。否则,两个或更多的线程可能在同一时...

c# webapi swagger【代码】

如何配置swagger?在使用项目中,我们希望去查看我们的webapi的测试,那么我们是需要去有一个集成的测试的。步骤1.在nutget管理包中下载swagger包。2.这样会在App_start 文件夹中出现swaggerconfig.cs 和swaggerNet.cs, 这个时候就需要配置的时候了。3.取消下面的注释(swaggerconfig.cs) c.IncludeXmlComments(string.Format("{0}/bin/ThinkingSpace.XML", System.AppDomain.CurrentDomain.BaseDirectory)); 当然我们为了代码的模块...

(转)C#命名规范

C#命名规范 数据类型 数据类型简写 标准命名举例 Array arr arrShoppingList Boolean bln blnIsPostBack Byte byt bytPixelValue Char chr chrDelimiter DateTime dtm dtmStartDate Decimal dec decAverageHeight Double dbl dblSizeofUniverse Integer int intRowCounter Long ...

c#中@开头的变量名【代码】

在 C# 规范中, @ 可以作为标识符(类名、变量名、方法名等)的第一个字符,以允许C# 中保留关键字作为自己定义的标识符。如class @class {publicstaticvoid @static(bool @bool) {if (@bool)System.Console.WriteLine("true");elseSystem.Console.WriteLine("false");} } class Class1 {staticvoid M() {cl\u0061ss.st\u0061tic(true);} } 注意,@ 虽然出现在标识符中,但不作为标识符本身的一部分。因此,以上示例,定义了一...

C# 读写xml、excel、word、access【代码】

C# 读写xml、excel、word、access这里只是起个头,不做深入展开,方便以后用到参考读写xml,主要使用.net 的xml下的documentusing System;using System.Collections.Generic;using System.Linq;using System.Text;using System.IO;using System.Xml;using System.Xml.Serialization;publicstaticvoid GetAreaCodes(string path,outstring[] areaCodes ,outstring[] pointCodes){if (File.Exists(path)){try{XmlDocument xml = new...

面试宝典之基本的C#面试问答

下文是125个基本的C#面试问答清单。这些面试问题简单、直接了当,涵盖了C#最基本的概念,大部分和面向对象的概念相关。所以如果你在准备C#面试,我建议你必须掌握这125个基本的C#面试问答来复习你的C#概念。那么现在来看看这125个基本的C#面试问答清单吧。1. 什么是C#?C#(发音”C sharp”)是一种简单、有别于传统的、面向对象、类型安全的编程语言。C和C++程序员很快就会熟悉它。C#中结合了高生产率的快速应用开发(RAD)语言。...

C#学习笔记_09_构造方法/函数【图】

09_构造方法/函数代码案例作用:构造函数主要是用来创建对象时为对象赋初值来初始化对象;总与new运算符一起使用在创建对象的语句中,例如A a=new A();特点:构造函数具有和类一样的名称;但它是一个函数,具有函数的所有特性,同一个类里面可以有多个参数不同的构造函数,也就是函数的多态;构造函数是在实例化类时最先执行的方法,通过这个特性可以给对象赋初值;构造函数没有返回值,也不能用void修饰,只有访问修饰符 (public&...

使用 EPPlus 封装的 excel 表格导入功能 (.net core c#)【代码】【图】

使用 EPPlus 封装的 excel 表格导入功能前言最近做系统的时候有很多 excel导入 的功能,以前我前后端都做的时候是在前端解析,然后再做个批量插入的接口我觉着这样挺好的,后端部分可以做的很简单(很偷懒的)但是因为各种各样的原因,最终还是需要做个专门的 excel导入 接口遇到的问题由于之前从来没有在后端部分处理过表格,所以我选择看一下同事的代码是怎么写的虽然我之前没写过相关的业务,但是直觉的认为这样写非常麻烦,那个 ...

从零开始写C# MVC框架之--- 项目结构【图】

框架总分2个项目:Web开发项目、帮助类项目 (ZyCommon、Zy.Utilities) 1、ZyCommon,是Web开发项目结构。新建一个空解决方案,再建Data、Service、ZyWeb解决方案文件夹,把数据层、接口服务层、Web层区分开 1.1、Data解决方案下----Zy.Xn.Model 数据模型项目,设计好System下 组织机构、菜单、角色、角色菜单、角色用户、用户实体类,Models是系统使用的一些DTO基类,比如ztree控件需要的一些实体字段,角色菜单...

c#基础知识第五节

数组的定义using System;class program{  static void Main(sting [ ] args)  {    //定义一个int类型的数组x    int [ ] x;    //指定数组x中有3个元素    x =new int [3]; //上面的两句合并成一句:int [ ] x=new int [3];    //设置第二个元素为1    x [0] =1; //设置第二个元素为3    x [1] =3;   //设置第二个元素为5    x [2] =5;   Console.W...