Вот чем мне нравится Remoting больше — так это тем, что вероятность получить ответ гораздо больше
Подскажите пожалуйста, как заставить работать WCF с бинарной сериализацией?
Уже недавно
спрашивалАвтор: Chardex
Дата: 20.01.07
, но не получил ответ.
Здравствуйте, Chardex, Вы писали:
C>Вот чем мне нравится Remoting больше — так это тем, что вероятность получить ответ гораздо больше
А в чем это выражаеться? Всмыле почему вы так думаете?
Здравствуйте, Chardex, Вы писали:
C>Вот чем мне нравится Remoting больше — так это тем, что вероятность получить ответ гораздо больше
C>Подскажите пожалуйста, как заставить работать WCF с бинарной сериализацией?
C>Уже недавно спрашивалАвтор: Chardex
Дата: 20.01.07
, но не получил ответ.
Сам не пробовал, просто вот есть
BinaryMessageEncodingBindingElement.
Здравствуйте, Mike Chaliy, Вы писали:
MC>А в чем это выражаеться? Всмыле почему вы так думаете?
Потому что технология сравнительно новая

и людей, которые могут помочь с ней, гораздо меньше, нежели чем с Remoting
Здравствуйте, Chardex, Вы писали:
Вот, собственно, исключение (смысл его понятен, но непонятно откуда оно):
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.ServiceModel.Dispatcher.NetDispatcherFaultException: The formatter threw an exception while trying to deserialize the message: There was an error while trying to deserialize parameter http://tempuri.org/:ExecuteResult. The InnerException message was ''Element' '_id' from namespace 'http://schemas.datacontract.org/2004/07/Cqt.Office.Core.System.BLToolkitExtension' is not expected. Expecting element '_error'.'. Please see InnerException for more details. ---> System.Runtime.Serialization.SerializationException: 'Element' '_id' from namespace 'http://schemas.datacontract.org/2004/07/Cqt.Office.Core.System.BLToolkitExtension' is not expected. Expecting element '_error'.
at System.Runtime.Serialization.XmlObjectSerializerReadContext.ThrowRequiredMemberMissingException(XmlReaderDelegator xmlReader, Int32 memberIndex, Int32 requiredIndex, XmlDictionaryString[] memberNames)
at System.Runtime.Serialization.XmlObjectSerializerReadContext.GetMemberIndexWithRequiredMembers(XmlReaderDelegator xmlReader, XmlDictionaryString[] memberNames, XmlDictionaryString[] memberNamespaces, Int32 memberIndex, Int32 requiredIndex, ExtensionDataObject extensionData)
at ReadJournalItemFromXml(XmlReaderDelegator , XmlObjectSerializerReadContext , XmlDictionaryString[] , XmlDictionaryString[] )
at System.Runtime.Serialization.XmlFormatClassReaderDelegate.Invoke(XmlReaderDelegator xmlReader, XmlObjectSerializerReadContext context, XmlDictionaryString[] memberNames, XmlDictionaryString[] memberNamespaces)
at System.Runtime.Serialization.ClassDataContract.ReadXmlValue(XmlReaderDelegator xmlReader, XmlObjectSerializerReadContext context)
at System.Runtime.Serialization.XmlObjectSerializerReadContextComplex.InternalDeserializeInSharedTypeMode(XmlReaderDelegator xmlReader, Int32 declaredTypeID, Type declaredType, String name, String ns)
at System.Runtime.Serialization.XmlObjectSerializerReadContextComplex.InternalDeserialize(XmlReaderDelegator xmlReader, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle, String name, String ns)
at ReadObjectConnectionEventFromXml(XmlReaderDelegator , XmlObjectSerializerReadContext , XmlDictionaryString[] , XmlDictionaryString[] )
at System.Runtime.Serialization.XmlFormatClassReaderDelegate.Invoke(XmlReaderDelegator xmlReader, XmlObjectSerializerReadContext context, XmlDictionaryString[] memberNames, XmlDictionaryString[] memberNamespaces)
at System.Runtime.Serialization.ClassDataContract.ReadXmlValue(XmlReaderDelegator xmlReader, XmlObjectSerializerReadContext context)
at System.Runtime.Serialization.XmlObjectSerializerReadContextComplex.InternalDeserializeInSharedTypeMode(XmlReaderDelegator xmlReader, Int32 declaredTypeID, Type declaredType, String name, String ns)
at System.Runtime.Serialization.XmlObjectSerializerReadContextComplex.InternalDeserialize(XmlReaderDelegator xmlReader, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle, String name, String ns)
at ReadArrayOfConnectionEventFromXml(XmlReaderDelegator , XmlObjectSerializerReadContext , XmlDictionaryString , XmlDictionaryString , CollectionDataContract )
at System.Runtime.Serialization.XmlFormatCollectionReaderDelegate.Invoke(XmlReaderDelegator xmlReader, XmlObjectSerializerReadContext context, XmlDictionaryString itemName, XmlDictionaryString itemNamespace, CollectionDataContract collectionContract)
at System.Runtime.Serialization.CollectionDataContract.ReadXmlValue(XmlReaderDelegator xmlReader, XmlObjectSerializerReadContext context)
at System.Runtime.Serialization.XmlObjectSerializerReadContextComplex.InternalDeserializeInSharedTypeMode(XmlReaderDelegator xmlReader, Int32 declaredTypeID, Type declaredType, String name, String ns)
at System.Runtime.Serialization.XmlObjectSerializerReadContextComplex.InternalDeserialize(XmlReaderDelegator xmlReader, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle, String name, String ns)
at ReadArrayOfConnectionEventFromXml(XmlReaderDelegator , XmlObjectSerializerReadContext , XmlDictionaryString[] , XmlDictionaryString[] )
at System.Runtime.Serialization.XmlFormatClassReaderDelegate.Invoke(XmlReaderDelegator xmlReader, XmlObjectSerializerReadContext context, XmlDictionaryString[] memberNames, XmlDictionaryString[] memberNamespaces)
at System.Runtime.Serialization.ClassDataContract.ReadXmlValue(XmlReaderDelegator xmlReader, XmlObjectSerializerReadContext context)
at System.Runtime.Serialization.XmlObjectSerializerReadContextComplex.InternalDeserializeInSharedTypeMode(XmlReaderDelegator xmlReader, Int32 declaredTypeID, Type declaredType, String name, String ns)
at System.Runtime.Serialization.XmlObjectSerializerReadContextComplex.InternalDeserialize(XmlReaderDelegator xmlReader, Type declaredType, String name, String ns)
at System.Runtime.Serialization.NetDataContractSerializer.InternalReadObject(XmlReaderDelegator xmlReader, Boolean verifyObjectName)
at System.Runtime.Serialization.XmlObjectSerializer.ReadObjectHandleExceptions(XmlReaderDelegator reader, Boolean verifyObjectName)
at System.Runtime.Serialization.NetDataContractSerializer.ReadObject(XmlDictionaryReader reader, Boolean verifyObjectName)
at System.ServiceModel.Dispatcher.DataContractSerializerOperationFormatter.DeserializeParameterPart(XmlDictionaryReader reader, PartInfo part, Boolean isRequest)
--- End of inner exception stack trace ---
Server stack trace:
at System.ServiceModel.Dispatcher.DataContractSerializerOperationFormatter.DeserializeParameterPart(XmlDictionaryReader reader, PartInfo part, Boolean isRequest)
at System.ServiceModel.Dispatcher.DataContractSerializerOperationFormatter.DeserializeParameter(XmlDictionaryReader reader, PartInfo part, Boolean isRequest)
at System.ServiceModel.Dispatcher.DataContractSerializerOperationFormatter.DeserializeBody(XmlDictionaryReader reader, MessageVersion version, String action, MessageDescription messageDescription, Object[] parameters, Boolean isRequest)
at System.ServiceModel.Dispatcher.OperationFormatter.DeserializeBodyContents(Message message, Object[] parameters, Boolean isRequest)
at System.ServiceModel.Dispatcher.OperationFormatter.DeserializeReply(Message message, Object[] parameters)
at System.ServiceModel.Dispatcher.ProxyOperationRuntime.AfterReply(ProxyRpc& rpc)
at System.ServiceModel.Channels.ServiceChannel.HandleReply(ProxyOperationRuntime operation, ProxyRpc& rpc)
at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs)
at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)
Да и потом кажется бинарная сериализация пошустрее работать будет, да и трафика поменьше.
ЗАйдите на GotDotNet.ru там сообщения из данного форума тоже отображаются и я вам там отвечал на вопрос по поводу бинарной сериализации.
Здравствуйте, Chardex, Вы писали:
_>>ЗАйдите на GotDotNet.ru там сообщения из данного форума тоже отображаются и я вам там отвечал на вопрос по поводу бинарной сериализации.
C>Зачем? Не вижу разницы
Просто сообщения с GotDotNet.ru на RSDN по какой то причине не попадают... А я сижу на GotDotNEt.ru.
Кстати у вас там был вопрос по поводу маркера десереализации по моему...
вот накопал ссылку...
http://msdn.microsoft.com/msdnmag/issues/06/12/NETMatters/default.aspx?loc=ru
Здравствуйте, raptor_xplat, Вы писали:
_>Просто сообщения с GotDotNet.ru на RSDN по какой то причине не попадают... А я сижу на GotDotNEt.ru.
Не замечал

ну ответьте пожалуйста, я зайду — посмотрою
_>Кстати у вас там был вопрос по поводу маркера десереализации по моему...
Да, я это видел. Но для меня актуальнее маркер при передаче данных от клиента серверу
Здравствуйте, Chardex, Вы писали:
C>Здравствуйте, Mike Chaliy, Вы писали:
MC>>А в чем это выражаеться? Всмыле почему вы так думаете?
C>Потому что технология сравнительно новая
и людей, которые могут помочь с ней, гораздо меньше, нежели чем с Remoting
Ыыы

, я думал ответ от сервера

. Уже думал пофлеймить

.
Здравствуйте, Chardex, Вы писали:
C>Подскажите пожалуйста, как заставить работать WCF с бинарной сериализацией?
А в чем проблема? Включаешь нужную сериализацию и вперед. Стандартные конфигурации с префиксом net (и кастомные с со стандартным транспортом отличным от HTTP) уже с бинарной сериализацией.
... << RSDN@Home 1.2.0 alpha rev. 673 on Windows Vista 6.0.6000.0>>
Здравствуйте, AndrewVK, Вы писали:
AVK>А в чем проблема? Включаешь нужную сериализацию и вперед. Стандартные конфигурации с префиксом net (и кастомные с со стандартным транспортом отличным от HTTP) уже с бинарной сериализацией.
Я использую NetTcpBinding, и,
судя по полученному исключениюАвтор: Chardex
Дата: 03.02.07
, используется XML.
Здравствуйте, Chardex, Вы писали:
C>Здравствуйте, AndrewVK, Вы писали:
AVK>>А в чем проблема? Включаешь нужную сериализацию и вперед. Стандартные конфигурации с префиксом net (и кастомные с со стандартным транспортом отличным от HTTP) уже с бинарной сериализацией.
C>Я использую NetTcpBinding, и, судя по полученному исключениюАвтор: Chardex
Дата: 03.02.07
, используется XML.
А XML в любом случае будет использоваться... это как раз работа SOAP, вопрос в том, как этот SOAP будет передаваться удаленному хосту... Он может передаваться как XML сообщение, а может передаваться бинарным сообщением... вообщем почитай статью MSDN magazine 2006 №9. Там очень продробная статься по сериализации в WCF. У меня к сожалению журнал в печатном виде, в электронном виде эту статью я не видел. Так что найди где-нибудь и почитай.
Chardex:
Вот чем мне нравится Remoting больше — так это тем, что вероятность получить ответ гораздо больше
Подскажите пожалуйста, как заставить работать WCF с бинарной сериализацией?
Уже недавно
спрашивалАвтор: Chardex
Дата: 20.01.07
, но не получил ответ.
Вопрос в том — как сообщения сериализовать в бинарном виде? а что тут сложного? Используй netTcpBinding. Или тебе нужно передавать по HTTP протоколу двоичные данные?
данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение