Tag: 肥皂

PermissionSet – 请求失败错误

我几乎没有使用ChannelSink,ServerSink和ClientSink进行通信的项目。 我已将项目从.NET 2.0升级到.NET 4.0。 升级之前一切正常。 现在,当我尝试进行通信时, – 对于特定的消息 – 我的OnReceiveMessage未被调用并抛出以下exception: System.Security.SecurityException:请求失败 服务器堆栈跟踪:在System.Array.InternalCreate(Void * elementType,Int32 rank,Int32 * pLengths,Int32 * pLowerBounds)System.Array.CreateInstance(类型为elementType,Int32 Length),位于System.Runtime.Serialization.Formatters.Soap.ObjectReader.ParseObject(ParseRecord pr)的System.Runtime.Serialization.Formatters.Soap.ObjectReader.ParseArray(ParseRecord pr)中。处于System.Runtime.Serialization.Forxs.Serial.Sunap.Serialization.Forxs.Soap.SoapParser.ParseXML()的System.Runtime.Serialization.Formatters.Soap.ObjectReader.Parse(ParseRecord pr)System.Runtime.Serialization.Formatters.Soap.SoapHandler.StartChildren()处于System.Runtime.Serialization.Formatters.Soap.SoapParser.ParseXML() System.Runtime.Serialization.Formatters.Soap.ObjectReader.Run()System.Runtime.Serialization.Formatters.Soap.ObjectReader.Deserialize(HeaderHandler,ISerParser) serParser)System.Runtime.Serialization.Formatters.Soap.SoapFormatter.Deserialize(Stream serializationStream, System.Runtime.Remoting.Channels.CoreChannel.DeserializeSoapRequestMessage(流中的HeaderHandler处理程序) system.Runtime.Remoting.Chanels.SoapServerFormatterSink.ProcessMessage中的inputStream,Header [] h,Boolean bStrictBinding) (IServerChannelSinkStack sinkStack,IMessage requestMsg,ITransportHeaders requestHeaders,Stream requestStream,IMessage&responseMsg,ITransportHeaders&responseHeaders,Stream&responseStream) 在[0]处重新抛出exception:在System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg,IMessage) RetMSg)在System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData&msgData,Int32类型)。 。 (我的一些文件)。 失败的操作是:Demand失败的第一个权限的类型是:System.Security.PermissionSet需求是: 唯一允许的权限是: 导致该失败的方法是:System.Runtime.Remoting.Channels.ServerProcessing ProcessMessage(System.Runtime.Remoting.Channels.IServerChannelSinkStack,System.Runtime.Remoting.Messaging.IMessage,System.Runtime.Remoting.Channels.ITransportHeaders,System .IO.Stream,System.Runtime.Remoting.Messaging.IMessage ByRef,System.Runtime.Remoting.Channels.ITransportHeaders ByRef,System.IO.Stream ByRef) 问题是,如果我创建一个虚拟方法并将其添加到sinkstack – 它会调用它。 即使我使用相同的代理拒绝该消息。 其他的事情是,其他消息工作正常。 只有一种类型的消息不能用于创建的所有类型。 […]

我可以自动为REST WCF服务生成服务引用吗?

我可以看到SOAP WCF over REST(json)wcf的唯一参数是,一旦我的服务被创建,我就可以在visual studio中添加一个引用,我可以为我和一个客户端类添加一个强类型类的负载可以通过我所有的网络方式调用。 据我所知,它甚至设置了web.config。 但是当我公开REST(json)服务时,我仍然得到一个WSDL。 所以我想知道还有办法自动构建我的引用吗?

在SOAP客户端中实现会话

我正在开发一个WP应用程序,使用SOAP客户端在.NET中实现web服务。 我使用“添加服务引用”选项在我的WP应用程序中实现了SOAP客户端。 现在的问题是,有两个不同的客户端类,一个用于登录function,另一个用于所有其他查询。 登录工作正常,返回我的真假,没有别的。 另一个客户端类用于进行不同的查询,这些查询都可以正常工作并从服务器获取一些数据。 在测试之后,我观察到响应独立于登录用户(即服务器发送与登录用户无关的相同数据)。 因此很明显,会话未得到维护,服务器正在发送一些匿名数据。 有人帮助我如何在SOAP客户端中维护会话。 注意:我不能向网络服务提供商询问此问题。 🙁

在C#中动态创建和公开SOAP服务及其WSDL(使用自定义TCP侦听器!)

我有一个用C#构建的自定义HTTP服务器,它接受REST服务请求并使用XML或JSON响应(取决于客户端需要什么)。 REST服务是在运行时从基于数据库的配置定义的,在输入参数和输出类型方面有很大差异,并且它在生产中运行良好。 但是,我想将SOAP访问添加到相同的服务,并使用适当的WSDL。 由于可用服务不是硬编码,这意味着: 从数据库中的方法定义发布在运行时生成的WSDL 解析传入的SOAP请求,将它们映射到这些定义,并确保请求在处理之前符合方法签名 处理响应后,创建符合WDSL的SOAP响应以返回结果 使用Visual Studio在设计时生成Web服务(和WSDL)的MS文档(和Google)文档,使用WebMethods,ASP.NET MVC等公开内容。这不是我正在寻找的,因为没有方法在设计时从中生成绑定的定义。 有没有人有任何想法(例如用于原始SOAP解析的工具包),以及从动态创建的方法签名等生成WSDL的想法? 知道如果不建造这样的东西怎么样? 我希望尽可能避免重新发明轮子。 PS:显然.NET框架中有标准化的东西,因为Visual Studio为你做了 – 任何想法如何在运行时在较低级别访问它?

使用C#读取Soap消息

sfasfasfasfsfsf 123456 successful 105 我试图使用C#阅读上面的肥皂消息XmlDocument : XmlDocument document = new XmlDocument(); document.LoadXml(soapmessage); //loading soap message as string XmlNamespaceManager manager = new XmlNamespaceManager(document.NameTable); manager.AddNamespace(“d”, “http://someURL”); XmlNodeList xnList = document.SelectNodes(“//bookHotelResponse”, manager); int nodes = xnList.Count; foreach (XmlNode xn in xnList) { Status = xn[“d:bookingStatus”].InnerText; } 计数始终为零,并且未读取bookingstatus值。