Мне сложно понять, как именно добавлять известные типы; для WCF, из файла конфигурации, который является внешним по отношению к моему wcf. Я нашел пример того, как настроить файл конфигурации, однако, я немного запутался относительно того, как этот файл настроен, и я не уверен, как я должен вызывать этот файл конфигурации для загрузки службы. известные типы для моего wcf. Вот пример файла конфигурации, содержащего известные типы.
http://codeidol.com/csharp/wcf/Data-Contracts/Data-Contract-Hierarchy/
Меня смущает, почему вы должны добавить тип a, а затем указать другой тип в качестве дочернего элемента только что добавленного типа. Мне кажется, вы просто добавили бы тип «Контакт», указали его сборку; «Хозяин» и это было бы так. Почему тег элемента knownType следует за тегом элемента add type, указывающим другой тип?
Кроме того, когда у меня правильно настроен файл конфигурации, когда и как мне вызвать его из моего wcf? Любая помощь будет оценена. Спасибо!
Обновление 1:
** Хорошо, это дает мне лучшее понимание, спасибо. Я все же попробовал то, что вы сказали, и ServiceKnownTypes не были найдены. Единственное, что я сделал по-другому в своем файле App.config, это в моем сервисе и хосте то, что у меня не было никакого параметра unknownType type = "...", чтобы указать. Вот мое с первого взгляда. У вас есть идея, что я делаю не так?
<system.runtime.serialization>
<dataContractSerializer>
<declaredTypes>
<add type = "Data,TestService, Version=1.0.0.0, Culture=neutral, PublicKeyToken=57f2af9570299a17"/>
</declaredTypes>
</dataContractSerializer>
</system.runtime.serialization>
Извините, что опубликовал это в разделе комментариев ранее, надеюсь, это понятнее. **
Обновление 2:
Вот кое-что ближе к тому, что я пытаюсь достичь. Что ты думаешь?
http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/6b70e9f4-52bc-4fa9-a0ff-c0859e041e85?prof=required