c#的三个高级参数ref out 和Params前言:在我们学习c#基础的时候,我们会学习到c#的三个高级的参数,分别是out .ref 和Params,在这里我们来分别的讲解一下,在这里的我们先不做具体的解释,我会通过几个例子来做分别的解释。一:out参数 1.首先我先给大家一个题:我们来写一个方法,来求一个数组中的最大值,最小值,总和,平均值。代码如下: int[] numbers = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; 通过分析我们会发现如果我们写一个...
如何获取二维数组中的元素个数呢?int[,] array = new int[,] {{1,2,3},{4,5,6},{7,8,9}};//定义一个3行3列的二维数组int row = array.Rank;//获取维数,这里指行数int col = array.GetLength(1);//获取指定维度中的元素个数,这里也就是列数了。(0是第一维,1表示的是第二维)int col = array.GetUpperBound(0)+1;//获取指定维度的索引上限,在加上一个1就是总数,这里表示二维数组的行数int num = array.Length;//获取整个二维数...
平常编程中,我们经常遇到需要到处Excel表的地方,下面是小编的总结,希望对大家有用。Scoresmr score = new Scoresmr(); //创建Scoresmr对象 DataSet ds = score.QueryScore(); //调用QueryScore方法查询成绩并将查询结果放到DataSet数据集中DataTable DT = ds.Tables[0];//生成将要存放结果的Excel文件的名称string NewFileName = DateTime.Now.ToString("yyyyMMddHHmmss") + ".xls";//转换为物理路径NewFileNa...
1staticvoid Main()2 {3var data = new ObservableCollection<string>();4 data.CollectionChanged += Data_CollectionChanged;5 data.Add("One");6 data.Add("Two");7 data.Insert(1, "Three");8 data.Remove("One");910 } 1112staticvoid Data_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e) 13 { 14 Console.WriteLine("...
XPath语法 在C#中使用XPath示例 XPath可以快速定位到Xml中的节点或者属性。XPath语法很简单,但是强大够用,它也是使用xslt的基础知识。示例Xml:<?xml version="1.0" encoding="utf-8" ?> <pets><cat color="black" weight="10"><price>100</price><desc>this is a black cat</desc></cat><cat color="white" weight="9"><price>80</price><desc>this is a white cat</desc></cat><cat color="yellow" weight="15"><price>80</pri...
public class BadWordFilter { #region 变量 private HashSet<string> hash = new HashSet<string>(); private byte[] fastCheck = new byte[char.MaxValue]; private byte[] fastLength = new byte[char.MaxValue]; private BitArray charCheck = new BitArray(char.MaxValue); private BitArray endCheck = new BitArray(char.MaxValue); private int maxWordLength = 0; ...
目前项目使用C#开发移动平台项目,温故而知新。资源类型,总体分为三类:堆栈、托管堆、非托管资源堆栈:内存原理先进后出,包含值类型和引用类型部分内容。 值类型-》它在释放资源的顺序上与定义变量时分配内存的顺序相反.值变量一旦出了作用域就会从堆栈中删除对象. 堆:引用类型 引用类型则存储在堆中.,当new一个类时,此时就会为对象分配内存存入托管堆中,它可以在方法退出很长的时间后仍然可以使用.我以一句常用...
参考 《编写高质量代码:改善C#程序的157个建议》 , 尽量使用FCL中的委托声明。 FCL: FrameWork Class Library 三种常用:Action、Func、Predicate小例子:1.Action :无返回值privatevoid AddAction(int a, int b){Console.WriteLine(a + b);}staticvoid Main(string[] args){TestCSharpClass myTest = new TestCSharpClass();Action<int, int> testAction = myTest.AddAction;testAction(1, 2);}2.Func<T1,T2....,out Tn>...
静态类 静态类与非静态类的重要区别在于静态类不能实例化,也就是说,不能使用 new 关键字创建静态类类型的变量。在声明一个类时使用static关键字,具有两个方面的意义:首先,它防止程序员写代码来实例化该静态类;其次,它防止在类的内部声明任何实例字段或方法。 静态类是自C# 2.0才引入的,C# 1.0不支持静态类声明。程序员必须声明一个私有构造器。私有构造器禁止开发者在类的范围之外实例化类的实例。使用私有构造器的效...
C# 根据鼠标坐标取网页内成员坐标.ie有时候你需要后台获取ie浏览器 鼠标所在位置的元素坐标,然而你使用屏幕坐标是不可行的所以我们需要把坐标转换成浏览器内坐标 然后再通过elementFromPoint获取网页成员。 private void tmrWatcher_Tick(object sender, EventArgs e){IntPtr hWnd = WindowFromPoint(MousePosition);dynamic document = GetHtmlDocumentByHandle(hWnd);if (document != null){Rectangle r = GetHtmlElemen...
MVC中的两种控制器:ApiController-->System.Web.Http.ApiControllerController-->System.Web.Mvc.Controller对应的过滤器命名空间:ApiController--> System.Web.Http.Filters-->example: System.Web.Http.Filters.IExceptionFilterController-->System.Web.Mvc-->example: System.Web.Mvc.IExceptionFilter须对应上,否则过滤器不会生效。Swagger问题:使用Swashbuckle不支持System.Web.Mvc.Controller 原文:https://www.cnblog...
转自:http://www.voidcn.com/article/p-mlrdwdni-bwm.html使用以下代码,我正在尝试创建一个文档,其中第2页和第3页是横向,而其他是纵向.全部应为8.5“x 11”.using (System.IO.MemoryStream ms = new System.IO.MemoryStream()) {using (DocX document = DocX.Create(ms)){document.PageLayout.Orientation = Novacode.Orientation.Portrait;document.PageWidth = 816F;document.PageHeight = 1056F;document.MarginTop = 50F;docu...
界面代码【Form1】?1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631...
上一章,我们讲解了Interop的引用错误和修改方法,本章开始引出新的问题。每当想生活再好点,新问题就出来了繁多的Interop,还要雨露均沾上文已经找到并解决了Interop错误问题,此时就可以开开心心的引用这些劳动成果,并编译出我们心爱的C#项目。可是每次我们想发版给客户的时候,都会非常郁闷,因为编译后的文件,简直多的可怕。比如下面这个截图,做了一个小的不能再小的项目了,U8登录加标准单据保存功能。结果一大堆文件,你说...
客户端代码[Serializable] // 表示该类可以被序列化 class Person{ public string name; public void HI() { Debug.Log(name); }}public class NewSocketClient : MonoBehaviour { void Start () { Person p = new Person(); p.name = "Lz"; Socket client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); IPEndPoint point = new IPEndPoint...