Flex и .NET. Какой хороший способ перенести данные во Flex, WebORB?Веб-сервисы?
Вопрос
Хорошо, ранее я задавал вопрос о Flex и службах данных ADO.NET, но не получил особого ответа, поэтому решил перефразировать.Есть ли у кого-нибудь опыт создания приложений Adobe Flex с серверной частью .NET?Если да, то какую архитектуру вы использовали и какие сторонние инструменты вы использовали, если таковые имеются.Я немного читал об удаленном взаимодействии Flex с помощью WebORB, но это кажется более сложным, чем должно быть. Являются ли веб-сервисы адекватной альтернативой?
Решение
В основном я использовал простые страницы ASP.NET, которые возвращают XML для ситуаций, которые в основном являются односторонними (данные из ASP.NET -> Flex/Flash).Сторона Flex просто использует URLLoader для доступа к странице ASP.NET и загружает результат в виде XML.
Если связь должна быть немного более двусторонней (скажем, отправка более пары параметров в ASP.NET), я использовал стандартные веб-сервисы ASP.NET.
Я никогда не использовал удаленное взаимодействие WebOrb или Flex, потому что мне никогда не был нужен такой тип взаимодействия между сервером и SWF.
Надеюсь, это поможет.
Другие советы
Я считаю, что веб-сервисы на самом деле более сложны и более ограничительны.Вы не можете создавать веб-сервисы с сохранением состояния, обмен данными происходит довольно медленно из-за многословия XML.Разработка с помощью WebORB не так уж и сложна.По сути, все сводится к разработке сборки и ее развертыванию в /bin
папка приложения ASP.NET с поддержкой Weborb.Как только вы это сделаете, вы сможете вызывать свои классы .NET с помощью Flex RemoteObject API.Например:
var ro:RemoteObject = new RemoteObject( "GenericDestination" );
ro.source = "com.bar.FooService"
ro.foo.addEventListener( ResultEvent.RESULT, gotFooResult );
ro.foo();
public function gotFooResult( evt:ResultEvent ):void
{
// evt.result contains the return value;
}
Важно скомпилировать проект Flex builder с аргументом компилятора -service.Вы можете добавить в свойства проекта «Компилятор Flex» Flex Builder:
-services c:/Inetpub/wwwroot/weborb30/web-inf/flex/services-config.xml
Если вы укажете этот путь, обязательно разверните свою DLL в:
c:/Inetpub/wwwroot/weborb30/bin