C#
Monster Shen
这个作者很懒,什么都没留下…
展开
-
第一天-类型反射 笔记
元数据概念:完整地描述类型(类、接口、结构、枚举、委托)。(都是引用类型)作用:通过元数据可以在运行时发现类型格式。元数据的标记TypeDef #nTypeRef #nField #nMethod #nProperty #n反射概念:反射是一个运行库类型发现的过程。作用:使用反射服务,可以通过编程使用一个友好的对象模型得到元数据信息。举例:得到一个给定的.dll程序集包含的...原创 2019-05-24 22:04:15 · 82 阅读 · 0 评论 -
第十四天 - ADO.NET 笔记
DataRow作用:表示表中的实际数据。DataRow的主要成员成员作用HasErrors、GetColumnsInError()、GetColumnError()、ClearErrors()和RowError返回一个布尔值,指示该行是否存在错误。如果有错误,GetColumnsInError()可以用来获取包含错误的成员,GetColumnError()获取错误的说明...原创 2019-06-17 22:03:55 · 105 阅读 · 0 评论 -
第十天 - ADO.NET 笔记
ADO.NET数据提供程序核心对象对象基类实现的接口作用ConnectionDbConnectionIDbConnection连接和断开数据源,提供相关事务对象的访问CommandDbCommandIDbCommand代表SQL查询语句或者存储过程名,同样提供了相关数据读取器对象的访问DataReaderDbDataReaderIDataRe...原创 2019-06-11 22:34:38 · 130 阅读 · 0 评论 -
第七天 - 多线程 笔记
创建线程1.使用ThreadStart委托Thread t = new Thread(new ThreadStart(调用的无参函数));t.Start();2.使用ParameterizedThreadStart委托Thread t = new Thread(new ParameterizedThreadStart(调用的有参函数));t.Start(参数);前台线程和后台线程...原创 2019-06-04 22:20:24 · 170 阅读 · 0 评论 -
第六天 - 多线程 笔记
异步委托BinaryOp b = new BinaryOp(Add);IAsyncResult iftAR = b.BeginInvoke(10,10,null,null);//主线程做其他事情int answer = b.EndInvoke(itfAR);BinaryOp b = new BinaryOp(Add);IAsyncResult iftAR = b.Be...原创 2019-06-03 22:15:37 · 53 阅读 · 0 评论 -
第十三天 - ADO.NET 笔记
断开连接层作用:通过内存中的对象模型来构建关系数据。(在不与DBMS连接的情况下)DataSet的主要属性属性作用CaseSensitive指示DataTable对象中的字符串笔记是否区分大小写DataSetName表示DataSet的一个友好名,通常通过构造参数指定EnforceConstraints获取或设置一个值,该值指示在尝试执行任何更新操作时是...原创 2019-06-14 22:12:34 · 89 阅读 · 0 评论 -
第九天 -对象序列化 笔记
序列化作用:描述了持久化一个对象的状态到流的过程。方式:为了让一个对象支持序列化服务,只需要为每一个关联的类(或结构)加上[Serializable]特性。如果有一些成员数据不能参与到序列化配置中,可以在这些域前加上[NonSerialized]特性注意:[Serialized]特性不能被继承。选择序列化格式化程序BinaryFormatter说明:使用紧凑的二进制格式SoapFo...原创 2019-06-09 00:08:33 · 97 阅读 · 0 评论 -
第九天 - 文件输入输出 笔记
Stream抽象类Stream派生类型吧数据表现为原始的字节流。抽象Stream成员成员作用CanRead、CanWrite和CanSeek检测当前流是否支持读、寻址和写Close()关闭当前流并释放与之关联的所有资源Flush()使用当前的缓冲状态更新基层的数据源或存储库。如果流不实现缓冲,这个方法什么都不做Length返回流的长度,以字节来表...原创 2019-06-08 12:39:07 · 70 阅读 · 0 评论 -
第五天 - 应用程序域 笔记
概念:进程的一个逻辑分区分区的好处:应用程序域是.Net平台操作系统独立性的关键特性。这种逻辑分区将不同操作系统表现加载可执行程序的差异抽象化了。和一个完整的进程相比,应用程序域的CPU和内存占用都要小得多。因此CLR加载和卸载应用程序域比起完整的进程来说也快得多,并且可以快速提升服务器应用程序的课扩展性。应用程序域为承载的应用程序提供了深度的隔离。如果进程中一个应用程序域失败了,剩余的...原创 2019-06-02 21:44:07 · 82 阅读 · 0 评论 -
第五天 -进程 笔记
.Net平台下与进程进行交互System.Diagnostics命名空间中的部分成员相关类型作用Process提供访问本地和远程进程的功能,允许通过编程方式开始和结束进程ProcessModule代表一个加载到特定进程的模块(.dll或.exe)。它能够表示任何模块ProcessModuleCollection提供ProcessModule对象的强类型集合...原创 2019-06-02 20:21:38 · 110 阅读 · 0 评论 -
第十二天 - ADO.NET 笔记
构建可重用的数据访问库当想向某表提交SQL语句来实现修改的时间(如插入、删除、修改操作),就要用到ExecuteNonQuery()方法。数据库代码的重用增加连接逻辑作用:连接、断开某个数据源代码:public class InventoryDAL{ private SqlConnection sqlCn = null; //连接数据源 public void O...原创 2019-06-13 21:59:55 · 75 阅读 · 0 评论 -
第九天 -文件输入输出 笔记
System.IO命名空间非抽象I/O类类型作用BinaryReader和BinaryWriter这两个类型能够以二进制值存储和读取基本数据类型BufferedStream这个类型为字节流提供了临时的存储空间,可以以后提交Directory和DirectoryInfo这两个类型用来操作计算机的目录结构。Directory类型主要的功能通过静态方法实现。Dir...原创 2019-06-07 22:33:29 · 74 阅读 · 0 评论 -
第十一天 ADO.NET 笔记
连接对象DbConnection类型的成员成员作用BeginTransaction()用来开始数据库事务ChangeDatabase()为打开的连接更改当前数据库ConnectionTimeout这个只读属性返回建立连接时终止尝试并生成错误之前的等待的时间。如果想修改这个值,需要在连接字符串中加入Connect Timeout片段Database获...原创 2019-06-12 21:47:03 · 83 阅读 · 0 评论 -
第四天 - 动态类型 笔记
dynamic关键字以下分配形式的区别1.var a = new List(强类型,初次赋值之后a的类型就是List)2.object a = new List(强类型,可以分配各种类型,但是要访问属性时,需要强制转换)3.dynamic a = new List(不是强类型,可以分配任何类型,可以在其生命周期内重新分配新的值)使用动态类型注意点使用动态类型时,编译器不会检查指定成员的...原创 2019-05-31 22:03:35 · 71 阅读 · 0 评论 -
第八天 - 多线程 笔记
使用TimerCallback作用:实现定期调用具体的方法。(比如后台检查是否收到新邮件)委托的写法:public delegate void TimerCallback(object state);CLR线程池好处:线程池减少了线程创建、开始和停止的次数,而这提高了效率。使用线程池,能够使我们将注意力放到业务逻辑上而不是多线程架构上。需要优先使用手工线程管理的情况:如果...原创 2019-06-05 21:43:45 · 79 阅读 · 0 评论 -
第三天 - 反射特性 笔记
使用早期绑定反射特性举例:Type t = typeof(Winnebago);object[] customAtts = t.GetCustomAttributes(false);使用晚期绑定反射特性举例:Assemly asm = Assembly.Load(“Attributed….”);Type vehicleDesc = asm.GetType(“Attributed….”...原创 2019-05-27 22:46:39 · 81 阅读 · 0 评论 -
第二天-类型反射 笔记
动态加载程序集概念:在运行时以编程的方式动态载入程序集。使用Assembly类Assembly.Load中的参数:传入一个要加载到内存的程序集的友好名称。(需要把.dll文件复制到应用程序的Debug目录)Assembly.LoadFrom中的参数:输入要查看的程序集的绝对路径。晚期绑定概念:是一种创建一个给定类型的实例并在运行时调用其成员,而不需要在编译时知道它存在的一种技术。作用...原创 2019-05-26 21:31:47 · 78 阅读 · 0 评论 -
C#修改系统的鼠标移动速度
由于项目需求,需要在游戏运行时,修改鼠标的移动速度using System;using System.Collections;using System.Collections.Generic;using System.Runtime.InteropServices;using UnityEngine;public class MouseConfig : MonoBehaviour {...原创 2019-09-12 11:45:35 · 895 阅读 · 0 评论