当前位置:首页 » 操作系统 » wcf源码下载

wcf源码下载

发布时间: 2022-05-30 10:54:17

① 求《WCF服务编程》随书源代码,要完整版的啊

② IIS中的WCF服务如何获得dll文件所存放的路径

dll文件一般被存放在C:\Windows\System目录下。电脑系统文件因经常会受到病毒的侵扰,导致系统文件、dll文件等丢失、损坏,一些包括游戏在内的应用程序无法启动。
解决方法有:
1、用Windows系统盘功能进行文件修复;
2、若在此之前有一键备份过,可以重新还原;
3、从网上下载系统文件然后覆盖到原文件夹里;
4、由于从网上下载系统文件,可能会因为系统文件版本与操作系统不相符造成系统文件不兼容的情况,修复系统文件最好使用专业的工具进行一键修复。
5、可以用腾讯电脑管家修复下。打开电脑管家——电脑诊所——软件问题——缺少dll文件。

③ WCF全面解析的前言

“全书之写印,实系初稿。有时公私琐务猬集,每写一句,三搁其笔;有时兴会淋漓,走笔疾书,絮絮不休;有时意趣萧索,执笔木坐,草草而止。每写一段,自助覆阅,辄摇其首,觉有大不妥者,即贴补重书,故剪刀浆糊乃不离左右。个中甘苦,只自知之。”
在某个阳光明媚的早晨,我在去上班的公交车上翻看岳南先生的《南渡北归》的时候,看到上面这段董作宾描述自己写作《殷历谱》之甘苦的文字,回想起我写作这本书的经历,不禁感慨万千。我无意将《WCF全面解析》自比煌煌巨着《殷历谱》,只是觉得人同此心,这段文字正好描述我写作此书的状态。
《WCF技术剖析(卷1)》(以下称《卷1》)于2009年7月正式出版,在此不久我就开始了《卷2》的创作。对于《卷1》的写作,我还算是游刃有余,但是写作《卷2》的难度是我始料未及的。如果像市面上大部分专着一样只涉及WCF编程,我想《卷2》早在一年之前就已经完成了。但是我在写作之初就没有将本书定位为一本纯粹的WCF编程书籍,而是决心写一本“深入肌理”,对WCF进行“庖丁解牛”式剖析的书籍。在没有任何现成资料可供参考的情况下,我只能通过对源码的分析来了解其底层的实现原理。为了能够确保这部分内容的正确性,我编写了很多的测试程序来证实我的想法。
“探究之深”是本书难以在较短的时间之内交付出版的一个主要原因,而另一个因素则是“涉及之广”。WCF不是微软在Windows平台下的闭门造车,而是在设计之初就考虑到了针对开放标准的支持。《卷2》涉及到太多的WS-*规范,比如“异常处理”一章涉及到SOAP;“元数据”一章涉及到WS-Policy、WS-Transfer、WS-MEX和WSDL;“事务”一章涉及到WS-Coordination和WS-AT;“可靠会话”一章涉及到WS-RM;“传输安全”一章涉及到WS-Security、WS-Trust 、WS-Secure Conversation和WS-Security Policy;“WCF 4.0新特性”一章涉及到WS-Discovery。对于这一系列的WS-*规范,单单从头到尾看一遍都需要花费不少时间,而我已经不太记得自己究竟看多少遍了。
《卷1》的整个内容基本上都围绕着WCF本身,但《卷2》却涉及到不少的背景知识。为了让读者对WCF有一个全面而深刻的了解,我在书中涉及到很多背景知识的介绍。比如“事务”一章中花费了很多文字介绍MSDTC和System.Transactions事务;“并发与限流”一章中有针对同步上下文的介绍;为了让读者能够深入认识可靠会话的实现原理,我将其同TCP协议的机制进行类比;“队列服务”一章中对MSMQ进行了系统的介绍;“传输安全”一章中更是涉及到针对非对称加密以及NTLM和Kerberos认证原理的介绍。
由于写作难度不小,加上写作和资料收集只能在工作之余进行,所以很多次都有中途放弃的念头。很有意思的是,每次在我下定决心放弃写作后没几天总是会收到《卷1》的读者给我的留言,这些留言体现了对《卷1》的肯定,充满了对《卷2》的期待。读者的肯定和期待一次次给了我坚持下去的力量,前后经历了两年的时间终于完成了《卷2》,这算是对读者的交代,也是对我自己的交代。
《卷2》完稿之后我开始为《卷1》的再版进行修订。对于出版后的《卷1》我基本上很少翻看,因为我个人基本上不太喜欢翻看自己写的东西,包括自己写的400多篇博客文章。针对《卷1》的修订让我第一次完整地阅读自己写的东西,经过了写作《卷2》的“折磨”,让我对WCF有了更加深刻的认识,于是我基于对WCF最新的理解开始对《卷1》的内容进行大刀阔斧的修改。虽然《卷1》大体上还是保留着原来的结构,但是内容已经发生了巨大的改变。据我粗略估计,改动内容的比率基本上达到一半。
最后我将《卷2》和修订后的《卷1》给李建忠和吕建伟(阿朱)老师帮忙审阅,李建忠老师建议增加关于WCF REST的内容,于是我在《卷1》中新加了“REST服务”一章。由于新的《卷1》已经难现往日模样,在本书的策划编辑张春雨老师的建议下我决定将原《卷1》和《卷2》作为一个整体分上、下册出版,于是才有了你手中的这本《WCF全面解析》。 “实践出真知”,不断地在具体应用中进行实践是学习WCF最有效的手段。实践是检验真理的唯一标准,通过将所学的WCF知识应用到一个真正的应用之中,才能确保我们掌握的知识的正确性。实践不但可以巩固我们的所学,还会让我们意识到不足。《WCF全面解析》在每一章节都会提供一系列的实例演示,读者可以单独下载这163个实例的源代码。

④ 如何部署用.net framework 4.5 写的wcf

写好代码,准备部署wcf到iis时,首先遇到第一个问题

1.HTTP 错误 404.3 - Not Found
由于扩展配置问题而无法提供您请求的页面。如果该页面是脚本,请添加处理程序。如果应下载文件,请添加 MIME 映射。
1. wcf 由于扩展配置问题而无法提供您请求的页面。如果该页面是脚本,请添加处理程序

解决方法: 网上说注册iss aspnet_iis ,结果在我这行不通,然后我在启用或关闭windows 功能中发现 .NET Framework 4.5 中的Http激活没有打勾,于是打上勾,这个问题就解决了


紧接着出现下面一个问题:
2. 无法激活服务,因为它不支持 ASP.NET 兼容性
错误提示:无法激活服务,因为它不支持 ASP.NET 兼容性。已为此应用程序启用了 ASP.NET 兼容性。请在 web.config 中关闭 ASP.NET 兼容性模式或将 属性添加到服务类型且同时将 RequirementsMode 设置为“Allowed”或“Required”。

解决方法: 转自 http://blog.csdn.net/hawksoft/article/details/7524866
默认情况下ASP.NET兼容性支持是关闭的,但很多时候需要打开Asp.Net的兼容性来利用Asp.Net的一些特性(使用session,上下文等),具体可参考http://msdn.microsoft.com/zh-cn/library/ms752234.aspx。
如果要打开兼容性,需要做两步:一是在服务类加上如下标记:
[(RequirementsMode = Mode.Required)]
public class AppRuntimeStateSvc : IAppRuntimeStateSvc
{
//服务代码.
}
二是在web.config中的<system.serviceModel>段里加:
<serviceHostingEnvironment multipleSiteBindingsEnabled="true" aspNetCompatibilityEnabled="true" />
注意框架3.5以前都是默认就支持的,4.0以后默认就是没有打开兼容性支持的.

然后出现最后一个问题:
3. 如果在配置中将“system.serviceModel/serviceHostingEnvironment/multipleSiteBindingsEnabled”设置为 true,则需要终结点指定相对地址。如果在终结点上指定相对侦听 URI,则该地址可以是绝对地址。若要解决此问题,请为终结点“http://localhost/Service1.svc”指定相对 URI。

解决方法:
<endpoint address="" //此处只拿出终结点地址部分
将终结点address改为空
原因:
IIS部署的时候,默认会有一个基地址Baseaddress,这个是根据你WCF服务程序的配置生成的。
如果你打算提供完成的地址格式,但是这个完整的地址格式 和Baseaddress 不匹配,比如端口不一样,就会出错。
address换成“”,目的就是使用默认的Baseaddress+“”。避免了你自己设置的和Baseaddress 不匹配的问题。

⑤ wcf怎么和redis缓存结合

Redis是一个不错的缓存数据库,读取数据速度效率都很不错。今天大家共同研究下redis的用法。结合网上的资料和自己的摸索,先来看下安装与配置把。咱们主要看在WINDOWS上怎样使用REDIS数据库。

下载地址:https://github.com/dmajkic/redis/downloads
1. 选择一个版本进行下载,我们这里使用Redis-2.1.5 - Win32版本的。下载解压后的文件如下图:

2. 在D建立一个redis 文件夹(当然建在其他盘也可以),然后把上面解压的32bit文件夹下面的所有文件拷贝到redis文件夹里面。

3.打开服务器端
通过CMD命令行打开服务器端,首先通过命令行转到d:\redis文件夹,然后输入如下命令 redis-server.exe

4.打开客户端
服务器端的CMD命令行不要关闭,再单独打开一个CMD命令行,切换到d:\redis文件夹,输入如下命令:redis-cli.exe -h 127.0.0.1 -p 6379

然后输入 set pwd 123456
get pwd
获取返回值成功,说明服务器端配置成功,

5.NET中怎样使用Redis存储数据.
在.net中比较常用的客户端类库是ServiceStack,看下通过servicestack怎样存储数据。
DLL下载:https://github.com/ServiceStack/ServiceStack.Redis,下载完成后,DLL中包括四个DLL文件,然后把这四个文件添加到自己的项目中。

6.示例代码
Redis中包括四种数据类型,Strings, Lists, Sets, Sorted Sets接下来我们一一看这四种类型的用法。
[csharp] view plain
<pre class="html" name="code"> private void Redis()
{
RedisClient client = new RedisClient("127.0.0.1", 6379);
client.Set<string>("username", "郭靖");
client.Set<int>("pwd", 123456);
string username = client.Get<string>("username");
int pwd = client.Get<int>("pwd");
Response.Write("读取缓存," + "姓名:" + username + ",密码:" + pwd + "<br/>");
}

private void RedisForManyServer()
{
using (var manager = new PooledRedisClientManager("127.0.0.1", "192.1680.30.90"))
{
IRedisClient iclient = manager.GetClient();

UserInfo user = new UserInfo();
user.Name = "杨过";
user.Age = 18;

iclient.Set<UserInfo>("user", user);
UserInfo user2 = iclient.Get<UserInfo>("user");
Response.Write("读取分布式缓存集群," + "姓名:" + user2.Name + ",年龄:" + user2.Age + "<br/>");
}
}</pre><br>

⑥ 求助远程屏幕捕获和传输VB源代码

使用WCF的默认DataContractSerializer手动去序列化成byte[],然后接收后再手动去反序列化,能解决这个问题。也就是说单纯的byte[]能过去,直接将下面代码中的list以List<May>返回去就是出现LZ遇到的问题。

也就是说序列化与反序列化这一大块数据都没问题。主要问题还是出现在WCF组装消息上了。
设置一下 ReaderQuotas 这个属性,这是设置消息复杂性的。
感觉这种症状很像被DOS干掉的感觉,于是想到ReaderQuotas。

下面是我尝试的例子。
C# code
publicbyte[] GetMays() { DataContractSerializer DCZ =newDataContractSerializer(typeof(List<May>)); List<May> list =new List<May>(); for (int i =0; i <30000; i++) { May tmp =new May { Name =DateTime.Now.ToString("yyyy-MM-dd") }; list.Add(tmp); } using(MemoryStream fs =new MemoryStream()) { DCZ.WriteObject(fs, list);return fs.ToArray(); } }
-------------------

用你这个方法搞定。客户端还要设置下
netTcpBinding.ReaderQuotas.MaxArrayLength = 2147483647;
netTcpBinding.ReaderQuotas.MaxStringContentLength = 2147483647;
netTcpBinding.ReaderQuotas.MaxBytesPerRead = 2147483647;

//-------------------------------
System.Diagnostics.Stopwatch myWatch = new System.Diagnostics.Stopwatch();
myWatch.Start();
// TaxiInfo[] taxiInfos = PositionService.GetAllTaxiInfos();
byte[] sds = PositionService.GetMays();
myWatch.Stop();
Console.WriteLine("耗时:" + myWatch.ElapsedMilliseconds + "ms");

MemoryStream memory = new MemoryStream(sds);
XmlDictionaryReader reader =
XmlDictionaryReader.CreateTextReader(memory, new XmlDictionaryReaderQuotas());
DataContractSerializer ser = new DataContractSerializer(typeof(List<TaxiInfo>));
// Deserialize the data and read it from the instance.
List<TaxiInfo> deserializedPerson =
(List<TaxiInfo>)ser.ReadObject(reader, true);
reader.Close();
// Console.WriteLine(deserializedPerson);

这样就没问题了。

⑦ wcf nettcpbinding 只能在局域网使用吗

局域网能使用,但不限于局域网。

WCF的基础ABC和Endpoint,对于常见的场景如果这么多的组合显然也很复杂,实际的应用中根据具体的场景选择对应的方式
图书”Programming WCF Services”(WCF服务编程) 对这个组合进行了详细的总结,如下:
【对于WCF的基础知识可以参阅图书或其他资料】

⑧ 如何将一个wcf服务发布成WSDL

2
改个名字为“manager.wsdl”

3
下一步,定义命名空间和协议等信息,默认即行

4
finish后,会在主工作区出现如下图

5
这是manager.wsdl的图形化形式,点击“Source”会可查看到源代码

6
这是默认生成的wsdl,我们要根据我们的项目需要,修改上面的图,首先对方法名进行修改

7
修改之后,右边的input和output也跟着修改了,这两个就是定义plus的输入和输出。 点击input参数“plus”右边的提示箭头

8
就在这里定义输入参数和和参数类型等信息,因为我们plus(float x, float y)方法中有两个参数x和y,故我们将上图改成两个参数的序列

9
变成下图,对比一下方法plus(float x, float y)

我们返回manager.wsdl视图,选择output参数右边的箭头

我们在这里设置float plus(float x, float y)方法的返回值及其类型,因其返回值只有一个,我们只须把上面的out的类型改成我们方法中用的float,改后,如下图

有没有注意到上图左上角有个 图标,点击它,进入下图

好了,我们再回到manager.wsdl,在源代码视图里右键选“Validate”,对xml文档进行检验,如果有错误的,就根据需要修改。

好了,图形化编写的wsdl文档完成了,顺便说一下,方法是可以定义多个的

为简单起见,我们就先以刚才做定义的那个方法为例,看看,如何根据wsdl文件,自动生成Web Service的服务器端。
我们New一个Web Service

在Web Service type中选择“Top down Java Bean Web Service”

在Service definition中找到刚才写的那个manager.wsdl文件

Web Service对话框,将服务类型的滑块调到“Develop service”处

接下来,就next –> next –-> finish就行。它会自动生成Web Service服务端的接口和类,在类中,可找到我们定义的方法

20
我们只要修改方法plus的方法体,以实现我们要实现的功能即行。

回答不容易,希望能帮到您,满意请帮忙采纳一下,谢谢 !

⑨ 谁有ASP.NET MVC3 WCF 开发的小项目源代码

如果你是想学习的话,最好下载个mvc3的书籍,然后跟着他边学变写代码,等你学完了,自然就有项目源码了

热点内容
centos使用python 发布:2024-05-18 23:39:48 浏览:866
幻影天龙脚本 发布:2024-05-18 23:38:17 浏览:711
编程的py 发布:2024-05-18 23:36:22 浏览:73
安卓系统怎么改序列号 发布:2024-05-18 23:28:16 浏览:782
c语言中实数 发布:2024-05-18 23:21:03 浏览:894
服务器搭建题目 发布:2024-05-18 23:01:29 浏览:27
下载武装突袭后怎么进服务器 发布:2024-05-18 22:56:17 浏览:825
c语言字符串大写变小写 发布:2024-05-18 22:56:16 浏览:438
重启删除的文件夹 发布:2024-05-18 22:34:11 浏览:638
视频软件源码 发布:2024-05-18 22:22:24 浏览:429