WCF REST-WebServiceHost介绍

评论(0)浏览(77)分类:Asp.Net/C#/WCF
WCF REST-WebServiceHost介绍  WCF为REST服务的寄宿提供了一个新的ServiceHost,即 WebServiceHost。WebServiceHost是ServiceHost的子类,而WebServiceHostFactory是对应的 ServiceHostFactory,在基于IIS/WAS寄宿中被使用。由于对REST服务绝大部分功能的支持都是通过 WebHttpBehavior这么一个终结点行为实现的,所以WebServiceHost的核心功能就是将该终结点行为应用到寄宿..

通过T4模板生成代码

评论(0)浏览(77)分类:Asp.Net/C#/WCF
通过T4模板生成代码  在《基于T4的代码生成方式》 中,我对T4模板的组成结构、语法,以及T4引擎的工作原理进行了大体的介绍,并且编写了一个T4模板实现了如何将一个XML转变成C#代码。为了让由此 需求的读者对T4有更深的了解,我们通过T4来做一些更加实际的事情SQL Generator。在这里,我们可以通过SQL Generator为某个数据表自动生成进行插入、修改和删除的存储过..

代码生成与VS集成目录

评论(0)浏览(77)分类:Asp.Net/C#/WCF
代码生成与VS集成目录[第1篇] 通过CodeDOM定义生成代码的结构  不知道大家对CodeDOM的代码生成机制是否熟悉,但是有一点可以确定:如果你使用过Visual Studio,你就应该体验过它带给我们在编程上的便利。随便列举三种典型的代码生成的场景:在创建强类型DataSet的时候,VS会自动根据 Schema生成相应的C#或者VB.NET代码;当我们编辑Resource文件的时候,相应的的后台..

C#如何实现asp的join函数

评论(0)浏览(77)分类:Asp.Net/C#/WCF
C#如何实现asp的join函数  asp中有join函数将数组项目组合成用指定字符串分隔的字符串。join(list[,delimiter])  list :必选项。包含要联接的子字符串一维数组。  delimite:可选项。在返回字符串中用于分隔子字符串的字符。如果省略,将使用空字符 ()。 如果 delimiter 是零长度字符串,则在同一列表中列出全部项,没有分界符。dim arr(2)arr(0)=0arr(1)=1arr(2..

通过自定义ServiceHost实现对WCF的扩展[实例篇]

评论(0)浏览(77)分类:Asp.Net/C#/WCF
通过自定义ServiceHost实现对WCF的扩展[实例篇]  在《原理篇》 中我们谈到了通过自定义ServiceHost对WCF进行扩展的本质,以及在IIS/WAS寄宿情况下ServiceHostFactory的作用。接 下来通过一个具体的例子来演示如何通过WCF扩展实现以Unity为代表的IoC框架的集成,以及应用该扩展的ServiceHost和 ServiceHostFactory如何定义。[源代码从这里下载]目录一、IoC/DI简介步骤一、自定义InstanceProv..

分布式事务-SOA事务控制方式

评论(0)浏览(77)分类:Asp.Net/C#/WCF
分布式事务-SOA事务控制方式  在一个基于SOA架构的分布式系统体系中,服务(Service)成为了基本的功能提供单元,无论与业务流程无关的基础功能,还是具体的业务逻辑, 均实现在相应的服务之中。服务对外提供统一的接口,服务之间采用标准的通信方式进行交互,各个单一的服务精又有效的组合、编排成为一个有机的整体。在这样 一个分布式系统中某个活动(Activity)的实现..

Asp.Net模拟表单提交数据和文件信息

评论(0)浏览(76)分类:Asp.Net/C#/WCF
Asp.Net模拟表单提交数据和文件信息  如果你需要跨域上传内容到另外一个域名并且需要获取返回值,使用Asp.Net的作为代理是最好的办法,要是客户端直接提交到iframe中,由于跨域是无法用javascript获取到iframe中返回的内容的。此时需要在自己的网站做一个动态页作为代理,将表单提交到动态页,动态页负责将表单的内容使用WebClient或HttpWebRequest将表单数据再上传到远程服务器..

C#时间格式化

评论(0)浏览(76)分类:Asp.Net/C#/WCF
C#时间格式化  C#的时间对象提供了ToString()方法将时间类型转换为需要的格式,只需要将格式字符串,区域性特定的格式设置信息【可选】传递进入ToString()方法即可格式化成需要的格式字符串类型。  详细使用方法参考C# DateTime ToString  本文要使用的是当要输出月份完整名称时,虽然可以使用MMM(对英文时时缩写),MMMM来实现,但是这2个参数要再未..

asp.net runat server属性编译错误

评论(0)浏览(75)分类:Asp.Net/C#/WCF
asp.net runat server属性编译错误  asp.net中的runat属性一定要注意放置的位置,要不会导致编译器编译出错。runat和server 这2个单词不能同时放在尖括号后面,要不编译器会编译出错。如,!--runat server-- ,虽然是注释的意思,但是会编译出错,提示服务器标记不正确!“/”应用程序中的服务器错误。 分析器错误 说明: 在分析向此请求提供服务所需资..

T4模板与Assembly Locking-Debug

评论(0)浏览(75)分类:Asp.Net/C#/WCF
T4模板与Assembly Locking-Debug本篇文章介绍的是两个重要的话题:程序集锁定和调试。一、程序集引用导致的编译问题  为了让读者对程序集锁定,以及由它造成的开发上的不便有一个深刻的认识,我特意写了一个小例子。如右图所示的解决方案包含两个项目:Lib和T4。其中 我们的T4项目中定义了一个叫作HelloWorld.tt的模板文件,该文件需要使用到定义在Lib项目中的某个类型。所 以..

WCF授权-Identity与Principal[下篇]

评论(0)浏览(75)分类:Asp.Net/C#/WCF
WCF授权-Identity与Principal[下篇]  WCF中安全主体(Principal)是整个授权机制的核心。可以简单地将安全主体定义成能够被成功实施授权的主体。一个安全主体具有两个基本的要素:基于某个用户的安全身份和该用户具有的权限。绝大部分的授权都是围绕着角 色进行的,我们将一组相关的权限集和一个角色绑定,然后分配给某个用户。所以在基于角色授权环境下,我们可以简单地将安全主..

Lucene.Net Similarity介绍

评论(0)浏览(74)分类:Asp.Net/C#/WCF
Lucene.Net Similarity介绍翻译:Lucene Similarity (Lucene 文档评分score机制详解)2008-11-28 19:09  文档的分值代表了该文档在特定查询词下对应的相关性高低,他关联着信息检索向量空间模型中的向量夹角的接近度。一个文档越与查询词相关,得分越高。分值计算公式如下:score(q,d) = coord(q,d) queryNorm(q) ( tf(t in d) idf(t)2 t.getBoost() norm(t,d) ) ..

C#如何实现语音发音

评论(0)浏览(74)分类:Asp.Net/C#/WCF
C#如何实现语音发音  电脑朗读”(英文)一个很好的触发点,通过它可以实现电子小说阅读、英文听力测试、英文单词学习... 下面的Speech已对MSTTS作了简单封装。 1.安装好MSTTS(如果你有装金山词霸,系统就已经安装了,在C:/windows/speech/下),可以在winntspeech中打到vtxtauto.tlb文件; 没有的话,就要装TTS和SAPI在金山的碟上有这两个文件! TTS:Mic..

.NET Globalization Resources使用说明

评论(0)浏览(74)分类:Asp.Net/C#/WCF
.NET Globalization Resources使用说明前言: 在学习如何使用.NET资源文件以及如何开发World-Ready程序之前,我们先通过一个例子来看看为什么要使用资源文件,以及使用它的好处。 假设要在程序中根据当前的Culutre来设置Form的Title和Logo: private void Form1_Load(object sender, System.EventArgs e) { CultureInfo ci = new CultureInfo(Thread.CurrentThread.CurrentUICultur..

.NET Assembly详细介绍

评论(0)浏览(73)分类:Asp.Net/C#/WCF
.NET Assembly详细介绍 第一部分 基本概念 托管模块(Managed Module) 托管模块是一个需要CLR才能执行的标准Windows可移植可执行(portable executable,简称PE)文件。 元数据(Metadata) 简单的讲,元数据就是一个数据表的集合,在这些表中,其中一些用于描述托管模块中所定义的内容(比如所定义的类型和它们的成员),另外还有一些用于描述托管模块中所引用的内..

C# 添加,修改,删除 文件夹 文件实例代码

评论(0)浏览(73)分类:Asp.Net/C#/WCF
C# 添加,修改,删除 文件夹 文件实例代码C#增加文件内容+展开-C#StreamWritersw=File.AppendText(Server.MapPath(".")+"\\myText.txt");sw.WriteLine("追逐理想");sw.WriteLine("kzlll");sw.WriteLine(".NET笔记");sw.Flush();sw.Close();C#拷贝文件+展开-C#stringOrignFile,NewFile;OrignFile=Server.MapPath(".")+"\\myText.txt";NewFile=Server.MapPath(".")+"\\myTextCopy.txt";Fil..

asp.net如何判断是否搜索引擎访问网站

评论(0)浏览(73)分类:Asp.Net/C#/WCF
asp.net如何判断是否搜索引擎访问网站  asp.net可以通过useragent来判断是否搜索引擎来访问网站,因为不同的搜索引擎有不同的useragent信息,具体参考 搜索引擎useragent列表  下面为C#版本的源代码 /// summary /// 判断是否为搜索引擎访问 /// /summary /// param name=useragent/param /// returns/returns public bool IsSearchEngine(string useragent) ..

在WCF体系中如何描述服务

评论(0)浏览(73)分类:Asp.Net/C#/WCF
在WCF体系中如何描述服务  任何一个程序都需要运行于一个确定的进程中,进程是一个容器,其中包含程序实例运行所需 的资源。同理,一个WCF服务的监听与执行同样需要通过一个进程来承载。我们将为WCF服务创建或指定一个进程的方式称为服务寄宿(Service Hosting)。服务寄宿的本质通过某种方式,创建或者指定一个进程用以监听服务的请求和执行服务操作,为服务提供一个..

wcf消息编码(Encoding)实现一

评论(0)浏览(73)分类:Asp.Net/C#/WCF
wcf消息编码(Encoding)实现一  消息作为WCF进行通信的唯一媒介,最终需要通过写入传输层进行传递。而对消息进行传输的一个前提或者是一项必不可少的工作是对消息进行相应的编 码。WCF提供了一系列可供选择的编码方式,它们分别在互操作和性能各具优势。在本篇文章我们将对各种编码方式进行消息的讨论。  从互操 作性的角度来看,编码方法很大程度上决定了跨平台支持的能..

事件管理器EventType clr20r3错误

评论(0)浏览(73)分类:Asp.Net/C#/WCF
事件管理器EventType clr20r3错误  在某些Windows Server 2003的操作系统上,运行.Net 2.0或者3.5的应用程序时,会发现没有任何反应,到系统的事件查看器里会发现类似EventType clr20r3 P1....P2...PN的错误提示。  很可能的原因就是:你的应用程序出现了异常,而.net没有或者无法捕捉该异常,所以导致出现如下情况:1.双击可执行程序,没有反应。2.此时去任务管理器中会看到..

12.2 母版页

评论(0)浏览(73)分类:Asp.Net/C#/WCF
12.2 母版页  在Web应用开发过程中,经常会遇到Web应用程序中的很多页面的布局都相同这种情况。在ASP.NET中,可以使用CSS和主题减少多页面的布局问起,但是CSS和主题在很多情况下还无法胜任多页面的开发,这时就需要使用母版页。12.2.1 母版页基础  开发人员能够使用母版页定义某一组页面的呈现样式,甚至能够定义整个网站的页面的呈现样式,Visual St..

13.1 ASP.NET内置对象

评论(0)浏览(73)分类:Asp.Net/C#/WCF
13.1 ASP.NET内置对象  在ASP的开发中,这些内置对象已经存在,这些内置对象包括Response、Request、Application等,虽然ASP是一个可以称得上是“过时的”技术,但是在ASP.NET开发人员中依旧可以使用这些对象。这些对象不仅能够获取页面传递的参数,某些对象还可以保存用户的信息,如Cookie、Session等。13.1.1 Request传递请求对象  Request对象是HttpRequest类..

.net 2.0 remoting 中 TCP Channel 用户认证探讨

评论(1)浏览(73)分类:Asp.Net/C#/WCF
.net 2.0 remoting 中 TCP Channel 用户认证探讨在.net 2.0中,在使用 remoting 的 TCP Channel, 用户认证是安全性问题探讨主题之一.本文将从两个角度来探讨用户认证问题, 并提出一个问题来寻求大家的解决方法!一、两个通道类的区别Tcp Channel :服务器端注册通道方式一:(1)注册一个通道+展开-C#TcpChannelchannel=newTcpChannel(8086);ChannelServices.RegisterChannel(channel,true);(2)注册..

mscorsvw.exe占用CPU资源

评论(0)浏览(72)分类:Asp.Net/C#/WCF
mscorsvw.exe占用CPU资源  mscorsvw.exe是在后台预编译.net的assemblies。一旦它执行完毕,就停止。一般来说,当你安装了.NET的分发程序,它就会先用5到10分钟预编译那些高优先级的assemblies,然后等到你的电脑空闲的时候再去处理那些低优先级的assemblies 。一旦它全部处理完毕,它将会终止,你将不会再看到mscorsvw.exe。很重要的一点是,当你看到CPU被100%地占用,..

Sql Server参数化优化查询

评论(0)浏览(72)分类:SQL及数据库
Sql Server参数化优化查询错误认识1.不需要防止sql注入的地方无需参数化  参数化查询就是为了防止SQL注入用的,其它还有什么用途不知道、也不关心,原则上是能不用参数就不用参数,为啥?多麻烦,我只是做公司内部系统不用担心SQL注入风险,使用参数化查询不是给自己找麻烦,简简单单拼SQL,万事OK错误认识2.参数化查询时是否指定参数类型、参数长度没什么区别  以前..

获取wcf元数据源代码

评论(0)浏览(72)分类:Asp.Net/C#/WCF
获取wcf元数据源代码  元数据的发布方式决定了元数据的获取行为,WCF服务元数据架构体系通过ServiceMetadataBehavior实现了基于WS-MEX和HTTP-GET的元数据发布,针对这两种不同的协议,元数据获取的实现方式也是不同的。我们首先来实现基于WS-MEX的元数据获取方式。 [Source Code从这里下载]一、 基于WS-MEX的元数据获取  ServiceMetadataBehavior通过创建MEX终结..

ConcurrencyMode.Multiple模式下的WCF服务同步上下文对并发的影响[下篇]

评论(0)浏览(72)分类:Asp.Net/C#/WCF
ConcurrencyMode.Multiple模式下的WCF服务同步上下文对并发的影响[下篇]  在《ConcurrencyMode.Multiple模式下的WCF服务同步上下文对并发的影响[上篇]》 中,我通过一个具体的实例演示了WCF服务宿主的同步上下文对并发的影响,并简单地介绍了同步上下文是什么东东,以及同步上下文在多线程中的应用。那么, 同步上下文在WCF并发体系的内部是如何影响服务操作的执行的呢?这实际上涉及到WCF的一个话题,即线程的亲和..

SqlDataSource.InsertParameters.Add添加时间参数报字符串的格式不正确错误

评论(0)浏览(72)分类:Asp.Net/C#/WCF
SqlDataSource.InsertParameters.Add添加时间参数报字符串的格式不正确错误  使用SqlDataSource.InsertParameters.Add给InsertCommand中的时间类型的添加参数时如果出现字符串的格式不正确错误错误,可以使用下面的语句代替。//ArticleDB.InsertParameters.Add(PubDate,DateTime.Now.ToString());//===ArticleDB.InsertParameters[PubDate].DefaultValue = DateTime.Now.ToString();  更好的方法就是给数据库此字段设..

WCF REST-WebHttpBinding与消息编码

评论(0)浏览(71)分类:Asp.Net/C#/WCF
WCF REST-WebHttpBinding与消息编码  不论是我们采用SOAP还是REST架构风格,运行时框架体系依然不曾改变,终结点也仍 旧是通信的核心。在Web HTTP编程模型中,我们采用基于WebHttpBinding绑定的终结点。绑定是一组相关绑定元素的有序组合,绑定的特性与能力决定于它包含的绑定元 素,在这里我们通过分析绑定元素的方式来剖析WebHttpBinding绑定与其它绑定有何不同。采用HTTP/HTT..

WCF TCP端口共享

评论(0)浏览(71)分类:Asp.Net/C#/WCF
WCF TCP端口共享  在基于TCP/IP协议簇的对等网络通信下,相互通信的应用程序运行各自的进程中,出于应用层的进程将数据局封装成数据报,并通过传输层的TCP或者UDP进行网络通信。而TCP和UPD则通过一个16bit的端口来识别不同的应用程序。  对于一些常用网络服务,他们都有一个知名的端口好与之匹配。比如,FTP服务是用的TCP端口为21;Telnet 服务的TCP端口为2..