Tag: #wcf

通过WCF回调发送业务对象时发生超时

我有一个WCF服务实现了回调合同,我试图通过发送业务对象。 我有使用DataContract()和DataMember()属性修饰的业务对象,它包含以下数量的属性: 整理:3 字符串:4 XElement:1 其他对象:5(也用DataContract()和DataMember()修饰 每当我尝试通过回调发送此对象时,服务就会超时。 我已经尝试创建具有较少属性的其他对象以通过回调发送,并且如果只有一个属性可以让它通过,但如果我有任何多个属性,则服务超时。 我的配置有问题吗? 我已经尝试了默认的wsDualHttpBinding,以及一个customBinding(如下所示),我尝试了各种不同的设置,包括maxBufferSize,maxBufferPoolSize和maxReceivedMessageSize。 我不想增加超时,因为我希望这个对象能够很快地到达我的客户端。 请有人帮助我…如果我留下了任何头发,我会把它拉出来!!!!! 我已经配置了我的服务: 服务器配置: 客户端配置:

如何在Windows服务之间进行通信

我有2个使用C#创建的Windows服务。 我想在第二个Windows服务中调用一个函数的服务之一。 我该怎么办? 编辑: 问题是我必须运行应用程序(我不需要它们而不是服务进程也很好)但我需要这个2应用程序进行通信,这2个应用程序在同一台服务器上,

Protobuf.net WCF反序列化列表

我尝试使用带有protobuf-net r.282的WCF 好。 我用ProtoBehavior属性标记我的合同 [OperationContract,ProtoBehavior] [FaultContract(typeof(ServiceFaultException))] Dictionary GetSalesTemplates(); [OperationContract, ProtoBehavior] [FaultContract(typeof(ServiceFaultException))] List GetActivities(); 接下来, – DTO: [DataContract] [Serializable] [ProtoContract] public class ActivityCategoryDTO { [DataMember] [ProtoMember(1)] public int Id { get; set; } [DataMember] [ProtoMember(2)] public string Guid { get; set; } [DataMember] [ProtoMember(3)] public string Name { get; set; } } 我尝试从客户端使用此服务。 当我调用GetSalesTemplates时 – 一切正常。 […]

如何在发出请求之前将WCF Http客户端绑定到特定的出站IPAddress

我希望我的请求通过特定的IP地址发出。 有没有办法在WCF中这样做。 我为什么需要这个的解释是有点长的啰嗦,所以我宁愿不进入那个。 这是示例代码 string ipAddress = “192.168.0.32”; IService service; ChannelFactory factory = new ChannelFactory(new BasicHttpBinding(), new EndpointAddress(“http://” + IPAddress + “:6996/IService”)); service = factory.CreateChannel(); service.Test(); 这是一个示例场景,准确解释我正在寻找什么。 假设我的机器上有两个IP(192.168.0.30和192.168.0.31)。 它们都可以达到192.168.0.32。 如果我现在运行此代码,它将从我的任何IP(.30或.31)中获取IP(.32)。 我如何强迫它通过我的特定IP(比如.30)。 有什么方法可以使用WCF吗?

如何在客户端项目中添加服务引用?

我是WCF的新手所以请说明你是否发现了我在这里完全错误的事情。 我创建了一个WCF服务项目(我的服务类是从ServiceBase类中提取的),端点地址绑定设置为basicHttpBinding。 现在我需要创建一个可以从此服务调用某些API的客户端应用程序。 我的问题是,在我的客户端应用程序中,如何添加对该服务的服务引用。 我是否需要首先在IIS下发布此服务(这意味着我也必须在计算机上使用IIS),或者是否还有其他一些添加服务引用的方法。

获取当前用户控件或Silverlight 3中的任何GUI的屏幕截图

我想询问是否可以以编程方式获取当前用户控件的屏幕截图并将其另存为silverlight 3中的文件。 我找到了一些方法来保存Silverlight 3中Canvas的图像文件,但用户控件或子窗口怎么样? 谢谢,

使用protobuf-net进行惰性,流驱动的对象序列化

我们正在开发用于流式传输大量数据的WCF服务,因此我们选择使用WCF流function与protobuf-net序列化相结合。 语境: 通常,一个想法是序列化服务中的对象,将它们写入流并发送。 在另一端,调用者将接收Stream对象,它可以读取所有数据。 所以目前服务方法代码看起来有点像这样: public Result TestMethod(Parameter parameter) { // Create response var responseObject = new BusinessResponse { Value = “some very large data”}; // The resposne have to be serialized in advance to intermediate MemoryStream var stream = new MemoryStream(); serializer.Serialize(stream, responseObject); stream.Position = 0; // ResultBody is a stream, Result is a […]

rest时的关系?

我想在社区中添加一个人,我不确定它是如何完成的? 我的datacontract看起来像这样: [DataContract(Name = “Community”)] public class Community { public Group() { People = new List(); } [DataMember(Name = “CommunityName”)] public string CommunityName { get; set; } public List People { get; set; } } [DataContract(Name = “Person”)] public class Person { [DataMember(Name = “PersonName”)] public string PersonName { get; set; } } 在我的服务中,我可以像这样添加一个人或社区: List […]

如何在不访问服务的情况下将WCF WSDL和XSD共享给客户端?

我尝试生成WSDL,然后使用客户端手动在WSDL中找到每个XSD。 该服务目前只在我的本地主机上,尚未发布。 客户端收到以下错误: 该文件已被理解,但无法处理。 WSDL文档包含无法解析的链接。 下载’http:// localhost:xxxx / MyService.svc?xsd = xsd0’时出错。 无法连接到远程服务器无法建立连接,因为目标计算机主动拒绝它127.0.0.1:xxxx 如何生成和共享服务WSDL和XSD,以便他们可以开始编写客户端代码(无需访问服务atm? 编辑 WSDL / XSD中与这些问题相关的问题 WSDL XSD 编辑2:感谢@The Indian Programmmer我能够使用此命令生成一个代理类来编程: “C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\svcutil.exe” -noconfig -namespace:*,SERVICE.INTERFACE.NAMESPACE -serializer:datacontractserializer https://My-PC/SvrLocation/MyService.svc?wsdl (托管在本地IIS中)

SOAP xml客户端 – 使用Visual Studio 2010 c# – 如何?

我是.NET世界的新手,但必须使用VStudio C#2010(.NET 4.0)来生成以SOAP Xml方式从Web服务请求数据的客户端。 我在这里寻找答案,但更加困惑。 MSDN表示“构建XML Web服务客户端”是.NET 4.0的遗产,即WSDL是遗留的。 他们说,使用“WCF”。 在WCF我迷路了 – 太多太模糊了。 它必须更简单……以及我可以在网上找到的所有例子 – 它们都使用WSDL,“遗产”。 以下是为了从Web服务获取数据而需要使用的服务的定义: 请求: POST /catalog.asmx HTTP/1.1 Host: www.somewebsite.com Content-Type: text/xml; charset=utf-8 Content-Length: length SOAPAction: “https://www.somewebsite.com/KeywordSearch” string int 响应: HTTP/1.1 200 OK Content-Type: text/xml; charset=utf-8 Content-Length: length …some stuff… 那么,构建这个简单客户端的正确方法,或者至少是最合理的方式是什么? 您会向新手建议哪些工具/库/方法(假设是VS 2010 C#,.NET 4.0环境)?