Портативный / Совместимые Контракты WCF

У меня была такая же проблема. Я работал над проектом на двух компьютерах: один в моем офисе и один дома. В моем офисе, после обновления AS 3.3, все было хорошо, но дома, после тех же шагов, которые я делал в офисе, вышел код ошибки 68.

Через пару часов я разобрался, как ее решить. В Android Studio 3.3 по умолчанию включена опция «Синхронизировать только активный вариант». Отключение этой функции решило проблему. Но при повторной активации функции появляется та же ошибка, даже после успешной синхронизации Gradle. Поэтому я думаю, что это не полное решение, но, по крайней мере, теперь я могу работать.

9
задан Fabian Steeg 27 January 2009 в 22:22
поделиться

2 ответа

Горе WCF DateTime

Относительно Вашего вопроса о DateTime Вы правы быть обеспокоенными раздаванием DateTime через WCF. Это - всего одна ссылка многих что жалоба на трудности... http://daveonsoftware.blogspot.com/2008/07/wcf-datetime-field-adjusted.html

Оценка эквивалентности типа

Согласно разделу 3.1.3 из книги Juval Lowy под названием Programming WCF Services, 2-й Выпуск...

WCF предлагает неявные контракты данных для типов примитивов, потому что существует промышленный стандарт для схем тех типов.

Он также указывает на это в отношении использования пользовательских типов как параметры на методах Контракта на Операцию. Я предполагаю, что это также относится к типам возврата метода.

Чтобы смочь использовать пользовательский тип в качестве операционного параметра, существует два требования: во-первых, тип должен быть сериализуемым, и во-вторых, у и клиента и сервиса должно быть локальное определение того типа, который приводит к той же схеме данных.

Можно также хотеть проверить раздел F.4. Контракты данных, который является частью его WCF Кодирование Стандарта. Маркер № 9 относится к Вашему вопросу...

Не передавайте определенные типы.NET, такие как Тип, как операционные параметры.

Привязка устанавливает ожидания

Привязка, которая основана на WSHttpBindingBase (поиск в Reflector.NET для его четырех дериваций) будет самым совместимым, так как они разработаны для совместимости.

Книжная рекомендация

Я настоятельно рекомендую книгу Juval: http://www.bookpool.com/sm/0596521308

7
ответ дан 4 December 2019 в 22:30
поделиться

Таким образом, если Вы захотите к interop с не услуги Microsoft, то Вы, вероятно, захотите избегать любого нетипа примитива. WCF использует сериализацию для кодирования данных для передачи, и Java, например, не сможет десериализовать хеш-таблицу. WCF однако является сборкой сверху SOAP так с небольшим количеством работы, необходимо смочь получить любую функцию SOAP, работающую между клиентом JAVA и Сервисом WCF или наоборот.

Просто не забудьте составлять контракты примитивов, и необходимо сделать хорошо.

1
ответ дан 4 December 2019 в 22:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: