1 Reply Latest reply on Jun 12, 2007 2:28 PM by schjlatah

    .NET WinForms to Flex ? Any advice?

    Jules_Winfield
      Guys,
      I've been designing applications for the financial services industry using MSFT technologies for many years (Win32 API, MFC, and now .NET WinForms). All applications are Internet-based, with a "thick client" which makes calls to my grid of servers via a socket or remoting connection.

      Customers are pleased with my work but it seems that over the past twelve months or so, those same customers have expressed a strong demand to access my application via a browser. They don't like having to install the .NET runtime and they don't like having to install my MSI file. Banks and large brokerage firms in particular are wary about installing MSI files [for obvious and legitimate reasons]. They want browser-based access. I can assume Windows as an OS, but not necessarily an Internet Explorer browser. Firefox use is common.

      I've never been a huge fan a developing browser-based applications, primarily due to my hatred of JScript. I don't mind using JScript in small doses to connect major elements on a web page but the idea of using it as my main client-side programming language is not appealing at all. Unfortunately, given that AJAX seems to be at the forefront of web development technology these days, and given that the 'J' in 'AJAX' stands for JScript, I feel as though I'm running out of options.

      ...but after doing some research, I ran across a technology by Adobe called Flex. I ran some of the demo apps and was completely blown away! They have a very modern look and they are as responsive as desktop apps. Have any of you made the transition from WinForms to Flex? What are the pros and cons? I get the impression that the Flex user interfaces are created using a language called ActionScript. What are your thoughts on this language?

      Recall that all of my server side logic is C# (.NET) based and can be accessed via HTTP remoting, sockets, etc. What mechanism does a Flex application use to retrieve information from the server?

      In the C#/WinForms world, I can purchase components like grids, charts, and fancy navigational tools from third party component vendors. Is the same thing true in the Flex world?

      Any information is appreciated.

      Thanks,
      Jules Winfield


        • 1. Re: .NET WinForms to Flex ? Any advice?
          schjlatah Level 1
          Jules,

          I came into the Flex world because my former employer liked the fact that it can look fancy, so i had to learn it. As it turns out, it is a fairly robust platform. I too don't know JavaScript, but I do know enough C# to make a mess; and some of the functions and coding techniques in C# are the same in ActionScript 3.0. Don't bother learning AS2 since that is not the direction you are coming from.

          Flex has some really neat features, and some security limitations that either require work-arounds, or are just not possible. The biggest one is DataBase access not possible in Flex, but Flex natively handles WebServices, HTTP services and RemoteObjects, any of which can be written in .Net. In the last Flex app I wrote I had the whole front end done in Flex 2 using C#.Net 2.0 WebServices, piping data through ADO into and out of our SQL2k5 DB, and it worked.

          As far as your question about fancy after-market or 3rd party components, there isn't much... yet, but what is is open source. There are/were plenty of components available for Flash, and Flash components can be used in Flex with only minor difficulty.

          I have noticed where financial institutions could greatly benefit from Flex. I do a bit of ForEx trading, and the Corporation I use just came out with a Java version, but even then I had to install it. If it could be done in Java, it could've been done in Flex with Java web services. Then it could've lived in a browser and I could make trades at work.

          I hope you do make the switch. Maybe that could make a Flex splash in the financial world.