KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I have a dynamic client to a service. How can i change the ReaderQuotas property of it's endpoint binding? I tried like this but it doesn't work ... DynamicProxyFactory factory = new DynamicProxyFactory(m_serviceWsdlUri); foreach (ServiceEndpoint endpoint in factory.Endpoints) { Binding binding = endpoint.Binding; binding.GetProperty<XmlDictionaryReaderQuotas>(new BindingParameterCollection()).MaxArrayLength = 2147483647 binding.GetProperty<XmlDictionaryReaderQuotas>(new BindingParameterCollection()).MaxBytesPerRead =2147483647; binding.GetProperty<XmlDictionaryReaderQuotas>(new BindingParameterCollection()).MaxDepth = 2147483647; binding.GetProperty<XmlDictionaryReaderQuotas>(new BindingParameterCollection()).MaxNameTableCharCount = 2147483647; binding.GetProperty<XmlDictionaryReaderQuotas>(new BindingParameterCollection()).MaxStringContentLength = 2147483647; } Even after doing this the ReaderQuotas values remain the default ones. I also tried like this and still doesn't work: DynamicProxyFactory factory = new DynamicProxyFactory(m_serviceWsdlUri); foreach (ServiceEndpoint endpoint in factory.Endpoints) { System.ServiceModel.Channels.BindingElementCollection bec = endpoint.Binding.CreateBindingElements(); System.ServiceModel.Channels.TransportBindingElement tbe = bec.Find<System.ServiceModel.Channels.TransportBindingElement>(); tbe.MaxReceivedMessageSize = 2147483647; tbe.MaxBufferPoolSize = 2147483647; TextMessageEncodingBindingElement textBE = bec.Find<TextMessageEncodingBindingElement>(); if (textBE != null) { textBE.ReaderQuotas.MaxStringContentLength = 2147483647; textBE.ReaderQuotas.MaxArrayLength = 2147483647; textBE.ReaderQuotas.MaxBytesPerRead = 2147483647; textBE.ReaderQuota
Tags (comma-separated)
Save Edits
Cancel