WCF DataContract IsReference = true и .NET 1.1 - PullRequest
1 голос
/ 13 августа 2010

У меня есть служба WCF, которая в основном возвращает

[DataContract(IsReference = true)]
public class Person
{
    public Person[] relatedPersons;
}

Как вы можете видеть, у него есть точечная ссылка, но, конечно, IsReference = true решает проблему. Почти.

Среди многочисленных клиентов есть приложение .NET 1.1, которое вызывает эту службу через basicHttpBinding. Если ответ содержит более одной ссылки на одного и того же человека, клиент .NET 1.1, по-видимому, не разрешает ссылки в XML, а вторая ссылка становится просто пустым знаком.

Есть идеи, как решить эту проблему?

1 Ответ

1 голос
/ 13 августа 2010

Нет способа решить эту проблему с клиентом .NET 1.1.Циркулярные ссылки в XML не являются стандартной спецификацией SOAP, что означает, что и клиент, и сервер должны использовать WCF, если вы хотите, чтобы он работал.Вы всегда можете написать собственный сериализатор на стороне клиента, который разрешит эти ссылки, но я подозреваю, что будет много работы, если он понадобится для работы в общем случае.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...