मेरे पास एक सेवा के लिए एक गतिशील ग्राहक है। मैं अपने एंडपॉइंट बाइंडिंग की रीडरक्वोटास संपत्ति कैसे बदल सकता हूं?एंडपॉइंट संशोधित करें ReaderQuotas प्रोग्रामेटिक
मैं इस तरह की कोशिश की लेकिन यह काम नहीं करता ...
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;
}
यहां तक कि इस ReaderQuotas मूल्यों डिफ़ॉल्ट लोगों रहने के करने के बाद।
मैं भी इस तरह की कोशिश की है और अभी भी काम नहीं करता:
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.ReaderQuotas.MaxDepth = 2147483647;
textBE.ReaderQuotas.MaxNameTableCharCount = 2147483647;
}
}
मैं की जरूरत है इस तो मैं सेवा के लिए 8kb की तुलना में अधिक भेज सकते हैं।
+1 इन बातों का उल्लेख के लिए पहले ग्राहक प्रॉक्सी और/या सेवा मेजबान बनाई गई हैं स्थापित किया जाना है। एक बार बनाया गया, वे अपरिवर्तनीय हैं। –
हाय मार्क, उत्तर के लिए धन्यवाद, लेकिन मुझे नहीं पता कि यह किस तरह का बाध्यकारी है, इसलिए मुझे बाध्यकारी बनाने के बाद इसे करने की ज़रूरत है। कोई अन्य सुझाव? धन्यवाद, एड्रिया – Adrya
आपका क्या मतलब है, आप नहीं जानते कि यह किस तरह का बाध्यकारी है। ServiceHostFactory में, यदि आपको आवश्यकता हो तो कोटा को बाध्यकारी और संशोधित करें। यदि आप जो कह रहे हैं, तो आप नहीं जानते कि आपको बाध्यकारी उपयोग करने के बाद तक कोटा को संशोधित करने की आवश्यकता है, फिर ..maybe ध्वज सेट करें और फिर होस्ट (या क्लाइंट प्रॉक्सी) को पुनरारंभ करें। – Cheeso