`
文章列表
在用Assembly.Load 或者Assembly.Loadfrom读取dll时,dll将被锁定,也就是该程序集无法被更新,修改或删除,下面介绍一下如何获取该程序集并使其不被锁定。 (方法一) 首先会创建出两个类,一个Loader一个是RemoteLoader 说明:1、Loader类提供创建子程序域和卸载程序域的方法;2、RemoteLoader类提供装载程序集方法;3、Loader类获得RemoteLoader类的代理对象,并调用RemoteLoader类的方法;4、RemoteLoader类的方法在子程序域中完成;5、Loader类和RemoteLoader类均放在Ass ...
一。 简介 1. GAT (Guidance Automation Toolkit) 向导自动化工具包, 旨在确保重复性的、易出错的开发工作以合理、一致的方式完成,并能缩短软件开发时间。使用Guidance Automation Toolkit,需要先安装一个叫做Guidance Automation Extensions 的runtime组件,然后下载并安装Guidance Automation Toolkit。 2. GAT 是有一系列的元素组成:Recipe,Action, TextTemplate transformation template, wizards, TYpe Conv ...

NHibernate 入门

  NHibernate是一个面向.NET环境的对象/关系数据库映射工具。对象/关系数据库映射(object/relational mapping,ORM)这个术语表示一种技术,用来把对象模型表示的对象映射到基于SQL的关系模型数据结构中去。 在今日的企业环境中,把面向对象的软件和关系数据库一起使用可能是相当麻烦和浪费时间的.NHibernate    NHibernate 不仅仅管理.NET类到数据库表的映射(包括.NET 数据类型到SQL数据类型的映射),还提供数据查询和获取
一。 概述 1. 动态链接库: 它是一个win32(32位操作系统环境)的概念,以dll为后缀的文件,可以有VC++,C++Builder,Delphi等生成。动态链接库不能调用.net程序集。 2. 程序集: 它是一个.net 的概念,可以是dll也可以是exe文件,程序集里面包含了:程序集清单(manifest),类型元数据,Microsoft中间语言(MSIL)代码以及其他资源。程序集清单包含有:程序集名称,版本信息,区域性信息,强名称信息,程序集文件列表,类型引用信息,引用和依赖程序集信息。在默认情况下,创建一个程序集,是该应用程序专有的,如果要共享该程序集,必须要加强名称表明该程序 ...

WCF入门

一· WCF 概述 WCF(windows communication fundation)是一组数据通信的应用程序开发的接口。是.net framework 的一部分,自3.0开始与WPF(windows Presentation Fundation)一起发布。从2.0开始就有Webservice(SOAP with HTTP communication)和.NET remoting (TCP/HTTP/pipline communication)以及基础的winsock 通信,由于这些技术存在重叠性,比如.net remoting 也可以用来开发Http,soap通信,而且选择不同的技术 ...
.Net对于远程调用提供了两种方法:Remoting和WebService。 WebService现在是如火如荼,特别是有一种比较流行的架构:Winform+WebService(Java、.Net),我曾经做过的一个项目就是这样子的,分布式、跨平台、极佳的用户体验,这三者结合起来是不是很诱人?不过,这里我只说Remoting,Remoting具有以下特点:1、Tcp通道的Remoting速度非常快2、虽然是远程的,但是非常接近于本地调用对象3、可以做到保持对象的状态4、没有应用程序限制,可以是控制台,winform,iis,windows服务承载远程对象缺点:1、不是标准的应用,因此 ...
托管代码 (managed code)   由公共语言运行库环境(而不是直接由操作系统)执行的代码。托管代码应用程序可以获得公共语言运行库服务,例如自动垃圾回收、运行库类型检查和安全支持等。这些服务帮助提供独立于平台和语言的、统一的托管代码应用程序行为。  托管代码是可以使用20多种支持Microsoft .NET Framework的高级语言编写的代码,它们包括:C#, J#, Microsoft Visual Basic .NET, Microsoft JScript .NET, 以及C++。所有的语言共享统一的类库集合,并能被编码成为中间语言(IL)。运行库编译器(runtime-awar ...
  Socket 概念 socket的英文原义是“孔”或“插座”。作为4BDS UNIX的进程通信机制,取后一种意思。通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄。在Internet上的主机一般运行了多个服务软件,同时提供几种服务。每种服务都打开一个Socket,并绑定到一个端口上,不同的端口对应于不同的服务。Socket正如其英文原意那样,象一个多孔插座。一台主机犹如布满各种插座的房间,每个插座有一个编号,有的插座提供220伏交流电, 有的提供110伏交流电,有的则提供有线电视节目。 客户软件将插头插到不同编号的插座,就可以得到不同的服务。 ...
Invoke and BeginInvoke   凡是使用了Invoke 和 BeginInvoke 调用的线程都是在主线程进行。
1.托管代码所申请的资源统一由.Net Framework管理,你不用操心,非托管代码所申请的内存等资源则需要你手动去释放 2.非托管程序运行会很快,是二进制的,托管程序好写,但是速度就差的很多,资源会用的很多3.“程序"一般都是在对操作系统进行直接或者间接的操作 "托管程序"是需要通过访问公共语言运行时(cls)才能访问操作系统的程序,而“非托管程序”不用通过访问公共语言运行时(cls)可以直接访问操作系统的程序      简单点说,只要用到 .net 类库的基本
  Webservice 的应用分为Webservice端即服务端和客户端即调用端。 实例: 创建webservice工程(ASP.net Web service application)叫WebServiceForTest,工程自动生成一个.asmx 的文件,该文件默认有一个HelloWorld 的方法,本实例只是简单的测试弹出“Helloworld”,首先该文件需要更改Webservice特性,将默认的namespace改为http://localhost/WebServiceForTest. 这样简单的Webservice的服务端就可以了,下面测试该服务是否可行,首先发布到一 ...
《一》 其实现的原理并没有本质的区别,在应用开发层面上有以下区别:1、Remoting可以灵活的定义其所基于的协议,如果定义为HTTP,则与Web Service就没有什么区别了,一般都喜欢定义为TCP,这样比Web Service稍为高效一些2、Remoting不是标准,而Web Service是标准;3、Remoting一般需要通过一个WinForm或是Windows服务进行启动,而Web Service则需要IIS进行启动。4、在VS.net开发环境中,专门对Web Service的调用进行了封装,用起来比Remoting方便我建议还是采用Web Service好些,对于开发 ...
  ① 导入命名空间: C#代码 using System.Web.Security; ② 获取MD5码: C#代码 string Password = FormsAuthentication.HashPasswordForStoringInConfigFile(TextBox1.Text.ToString(), "MD5");
  /// <summary> /// 将指定字符串按指定长度进行剪切, /// </summary> /// <param name= "oldStr "> 需要截断的字符串 </param> /// <param name= "maxLength "> 字符串的最大长度 </param> /// <param name= "endWith "> ...
                <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" CssClass="tablecss">          <Columns>              <asp:TemplateField HeaderText="编号" HeaderStyle-CssClass="aaa" ItemStyle-CssClass= ...
Global site tag (gtag.js) - Google Analytics