Это поведение , указанное :
Перечислители могут использоваться для чтения данных в коллекции, но они не могут использоваться для изменения базовой коллекции.
blockquote>Это ограничение упрощает внедрение счетчиков. Обратите внимание, что некоторые коллекции (некорректно) позволят вам перечислять при изменении коллекции.
Кейт Элдер сравнивает здесь ASMX и WCF .Проверить это.
Другое сравнение ASMX и WCF можно найти здесь - я не на 100% согласен со всеми пунктами, но это может дать вам представление.
WCF - это, по сути, «ASMX на стереоидах» - это может быть все, что ASMX может - плюс намного больше! .
ASMX:
WCF может быть:
Вкратце: WCF здесь, чтобы полностью заменить ASMX.
Посетите Центр разработчиков WCF на MSDN .
Обновление: ссылка кажется неработающей - попробуйте следующее: Что такое Windows Communication Foundation?
WCF полностью заменяет веб-сервисы ASMX. ASMX - это старый способ делать веб-сервисы, а WCF - это современный способ делать веб-сервисы. Все новые разработки веб-служб SOAP, на клиенте или сервере, должны быть сделаны с использованием WCF.
Веб-службы ASMX могут быть вызваны только по протоколу HTTP (традиционный веб-сервис с расширением .asmx). В то время как служба WCF или компонент WCF могут быть вызваны любым протоколом (например, http, tcp и т. Д.) И любым типом транспорта.
Во-вторых, веб-службы ASMX не обладают гибкостью. Однако службы WCF гибки. Если вы делаете новую версию сервиса, вам нужно просто выставить новый конец. Таким образом, услуги являются гибкими, и это очень практичный подход с учетом текущих тенденций в бизнесе.
Мы разрабатываем WCF как контракты, интерфейсы, операции и контракты данных. Как разработчик, мы больше сосредоточены на сервисах бизнес-логики и не должны беспокоиться о стеке каналов. WCF - это унифицированный программный API для любых сервисов, поэтому мы создаем сервис и используем информацию о конфигурации для настройки механизма связи, такого как HTTP / TCP / MSMQ и т. Д.