protected void ApplyBaseConfiguration(ProtoBufBinding binding) { binding.SetDefaultCompressionBehaviour(this.CompressionType); binding.SetOperationBehaviours(this.OperationBehaviours); var encoding = binding.GetEncodingElement(); var setReaderQuota = this.ReaderQuotas; if (setReaderQuota != null) { encoding.ReaderQuotas = new XmlDictionaryReaderQuotas() { MaxArrayLength = setReaderQuota.MaxArrayLength == 0 ? 16384 : setReaderQuota.MaxArrayLength, MaxBytesPerRead = setReaderQuota.MaxBytesPerRead == 0 ? 4096 : setReaderQuota.MaxBytesPerRead, MaxDepth = setReaderQuota.MaxDepth == 0 ? 32 : setReaderQuota.MaxDepth, MaxNameTableCharCount = setReaderQuota.MaxNameTableCharCount == 0 ? 16384 : setReaderQuota.MaxNameTableCharCount, MaxStringContentLength = setReaderQuota.MaxStringContentLength == 0 ? 8192 : setReaderQuota.MaxStringContentLength }; } }