DotNet
JerryChou
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
windbg分析Load DLL
<br />1. 使用windbg打开一个程序<br />2. 设定断点:bp kernel32!LoadLibraryExW "du poi(esp+4)", 按f5执行,在断点处会显示加载的DLL名称<br /> <br /> <br />翻译 2010-08-08 20:11:00 · 1996 阅读 · 0 评论 -
XmlWriter使用
This property only applies to XmlWriter instances that output text content to a stream; otherwise, this setting is ignored.原创 2011-07-12 22:44:18 · 5582 阅读 · 0 评论 -
关于写网络流的注意事项
之前有开发的一个邮件客户端的项目,需要通过TCP来访问服务器,类库使用了一个开源的库,但是发现速度较慢,尤其是文件大时。后来发现是因为该类库在写网络流时是一个一个字节的写,后来将其改为按4096个字节来写,发现速度比原来的快好几倍。估计是因为在写网络流时要调用网络IO方面的中断调用引起的。 另外如果要使用TcpListener,最好继承TcpListener后再使用,因为要使用TcpLis原创 2010-09-05 07:49:00 · 674 阅读 · 0 评论 -
Splunk使用心得
最近使用了下Splunk,一个日志系统,有些心得记录下。如果是要用程序记录日志,如下操作:1.配置Splunk打开tcp,udp2.使用tcp,udp发送数据,当然也可以使用NLog等其它第三方库来处理 public static void SendByTcp(string strMsg) { using (TcpClien原创 2012-06-05 21:17:52 · 5933 阅读 · 0 评论 -
VS2010 EF
实体框架:Database-first: You start with a database, and Entity Framework generates the code.Model-first: You start with a visual model, and Entity Framework generates both the database and code.Code转载 2012-04-04 21:57:37 · 2075 阅读 · 0 评论 -
XML相关操作
XmlDocument doc = new XmlDocument(); doc.Load(filename); //取得XML根节点中定义的所有Namespace XmlNamespaceManager xmlnsManager = new XmlNamespaceManager(new Nam翻译 2010-11-16 21:55:00 · 616 阅读 · 0 评论 -
Tracking DataTable
// DataTable dt = new DataTable();// dt.AccessChanges(); dt.ColumnChanged += dt_ColumnChanged; private static List lstModified = new List(); static void dt_ColumnCha原创 2013-04-23 21:08:08 · 704 阅读 · 0 评论 -
NLog使用心得
最近要记录日志,于是使用NLog logger = NLog.LogManager.GetLogger("PortLogger");logger.Info("test"); http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-inst翻译 2013-05-06 22:52:42 · 1202 阅读 · 0 评论 -
C#程序中的注意事项
最近新建一个winform项目MyProj,后来我又新建了一个窗体也叫MyProj,后来发现在该工程中的窗体中拖放该工程中的控件后编译不过,看了一段时间后才知道是因为命名空间与类名冲突了。所以建议以后不要让命名空间与该工程的类同名,以免发生冲突。 最近做了一个性能优化的项目,发现Dictionary中class比struct要快,怀疑是不是Dictionary中存在值拷贝的问题,注意c原创 2011-11-07 20:20:11 · 827 阅读 · 0 评论 -
win8 app store
在新建App store项目之后,打开MainPage.xaml后显示:包无法进行更新、相关性或冲突验证。 (异常来自 HRESULT:0x80073CF3)CreateAppContainerProfile 失败,错误为 0x800706D9,因为无法注册防火墙。 解决方法:打开Windows防火墙后OK。原创 2013-07-02 21:02:33 · 2860 阅读 · 0 评论 -
Vertica使用心得
对于连接Vertica,使用Squirrel(6.0.0_vertica-jdk5-6.0.0-0.jar)来进行连接,也使用vsql(6.0.0_vertica-client-6.0.0-0.64.exe)进行连接。 varchar(25) mean 25 bytes(octets)vertica中是使用UTF8来存储,对于非英语字符,如汉字会占用多个字节,要合理计算字段的长度。原创 2012-07-28 09:53:23 · 17009 阅读 · 1 评论 -
Regex使用心得
<br />今天要使用正则表达式来match文本,总是不能match上,后来发现对于(,)要转义:<br />@"news/(economics/)"<br /> <br />原创 2011-04-19 20:55:00 · 533 阅读 · 0 评论 -
HttpWebRequest支持带ViewState的网页POST请求
<br />staticprivatestring SearchURL(string id)<br />{<br /> try<br /> {<br /> //Get the ViewState and EventValidation<br /> HttpWebRequest request = WebRequest.Create(URI) as HttpWebRequest;<br /> request.Met原创 2011-02-18 21:12:00 · 2939 阅读 · 0 评论 -
WCF中的Streaming流处理
通常情况下,在服务端与客户端交换信息的时候,消息会在接受端进行缓存,等消息全都接收完成后再一起进行处理。不管是客户端向服务端发送消息,还是服务端向客户端发送消息都是如此。当客户端调用服务时,要阻塞客户单进程,直到消息发送完毕,服务端才开始处理数据,然后是返回处理完毕的结果给客户端,客户端接收完毕,才能解除阻塞。这样带来的问题是当消息传递的时间很短,相对处理时间可以忽略不计,不会影响系统服务的效率。但是要是消息数据很大(比如是图片或者多媒体对象)每次传输时间相对较大,这样接收端的等待时间过久,势必每次阻塞都会转载 2010-08-22 09:34:00 · 2710 阅读 · 0 评论 -
关于序列化的测试
今天试了下DataTable序列化后的信息:Binary: org:394,179 gzip:244,806XML: org:3,737,190 gzip:339,290SQL Management Studio:(21914 row(s) affected)TDS packets received from server: 108Bytes received from server: 439210原创 2010-08-21 21:51:00 · 1007 阅读 · 0 评论 -
win7+VS2010+WCF不能添加服务引用
<br />今天上午win7+VS2010+WCF,试了下WCF,发现不能引用WCF服务,开始以为是没有元数据交换,在Web.config中看了下:<br /><serviceMetadata httpGetEnabled="true"/><br /> <br />是有配置的呀,后来又加一个Web Service,发现引用web service也出错,于是直接使用IE访问WebService,可以显示,但是点击其中一个方法后出现: c:/windows/temp/xxx. 类似的问题,才明白可能是IIS原创 2010-08-22 11:28:00 · 4558 阅读 · 0 评论 -
关于ASP.net页面的想法
<br />如果IE打开a.aspx时被阻塞时,另外一个IE访问a.aspx会怎样?<br />我的试验结果是另一个IE不会受影响。<br />但是有个想法:异步页面有什么大的作用呢?<br /> <br /> protected void Page_Load(object sender, EventArgs e)<br /> {<br /> string p = Request["p"];<br /> if (p == null)<b原创 2010-08-27 14:16:00 · 685 阅读 · 0 评论 -
关于interop时的注意事项
<br />以前使用过Interop功能,在这里做一个小备注:<br />1.在生成COM组件的Interop组件后,可以正常使用COM组件的功能,但是要注意如果是进程内组件,则如果是引用了32位COM组件,则该.net程序只能运行在32位模式;进程外组件没有这个限制(COM+,Active exe)<br />2.使用DllImport来使用API时,要注意内存问题,建议打开pageheap开关后再运行一遍<br />3.注册过.vbr文件后,能直接通过反射调用COM+组件(估计直接使用CLSID也是可以原创 2010-08-27 14:41:00 · 754 阅读 · 0 评论 -
关于aspx页面输出的总结
对于使用aspx页面来输出一些结果:1. 添加头信息,指定文件大小:Response.AddHeader("Content-Length", fi.Length.ToString());2. 对于二进制信息:Response.ContentType = "application/octet-stream";3. 对于aspx页面的限制可以参照配置节:maxRequestLengthexecutionTimeout原创 2010-08-31 20:47:00 · 2306 阅读 · 0 评论 -
关于DataTable中DateTime跨时区的问题
最近做了一个CS项目,其中IIS在美国,Client在中国:当直接从Client端访问数据库表,则时间是正确的;而如果从IIS访问数据库表,然后序列化后传给Client后,时间则与原来的不一样了(相差13个小时)。后来看了IIS的时区为UTC-5,Client为UTC+8。没有办法,只好在IIS中将其转换为字符串后,然后传给Client,在Client进行解码。今天上午看了下文档,发现DataColumn中有一个属性可以进行设置,如下:col.DateTimeMode = DataSetDateTime.U原创 2010-09-04 21:23:00 · 2963 阅读 · 0 评论 -
反射带有out参数的方法
public int GetFlag(out int Result);使用下面的方法来反射: System.Type myType = typeof(TestReflection); //反射生成改类型的对象实例 Object obj = myType.InvokeMember(null,BindingFlags.CreateInstance,null,null,null); System.Int32 i=new System.Int32(); Object[] myArgs =new转载 2010-09-22 22:16:00 · 2394 阅读 · 1 评论 -
dotnet调试相关
如果你正在调试一个托管应用程序,却发现不能查看任何局部变量或者函数参数的值,这是因为托管代码在编译时已经被优化了。下面的内容将告诉你怎样解决这个问题。我会教大家一种非常简单的小技巧来利用.ini文件禁止代码优化。它不需要你重新编译你的应用程序并且只要几秒钟就能实现。 创建一个.ini文件并添加如下内容: [.NET Framework Debugging Control]GenerateTrackingInfo=1AllowOptimize=0转载 2010-11-18 20:54:00 · 886 阅读 · 0 评论 -
WebBrowser在C#中的应用
this.webBrowser1.DocumentText = @" ";object values = this.webBrowser1.Document.InvokeScript("GetValues", null);foreach (object value in (IEnumerable)values) MessageBox.Show(value.ToString());mshtml.IHTMLDocument2 doc = (mshtml.IHTMLDocument2)axWebBrowser翻译 2010-11-20 09:49:00 · 1762 阅读 · 0 评论 -
对于dotnet中返回404后继续读取http的内容的处理
对于通过http 404来返回错误后,要继续读取http的内容:catch (WebException webEx){ using (Stream stream = webEx.Response.GetResponseStream()) { using (StreamReader reader = new StreamReader(stream))原创 2014-08-27 22:35:51 · 849 阅读 · 0 评论
分享