views:

254

answers:

2

I have a .NET 2.0 WinForms application that was developed using the Composite Application Block and Smart Client Software Factory.

I'm considering the development of a module that would contain a browser control that would access the ASP.NET website using credentials established when the user logged into the WinForms client.

My goal is to use this strategy to transition all of the modules that are currently in the client to ASP.NET and retire the 'smart' client. Security for the WinForms client is currently implemented using the ASP.NET Membership functionality.

Is this possible? Sensible?

A: 

What are your requirements?

You would choose a web app over a smart client mainly

  1. if you have to reach people that are not on the Windows platform or
  2. you have a need for a zero-install app

By having your app users having to access the web app via the smart client (browser-control) you would be missing (1) and (2). In my opinion it would defeat its purpose.

AlejandroR
+1  A: 

Yes, you can. Make a SmartPart that hosts the WebBrowser control, add some buttons for forward and backward navigation, and a url textbox; then point the WebBrowser control at your web application's URL.

It is sensible. We used CAB/SCSF to create an application we called "The Integrated Desktop". This application serves as the platform for all internal apps for the company; everything is integrated into this one desktop application. We added a foundational module, basically a beefy version of what I described in the above paragraph, to facilitate web browsing since a few pre-existing apps were web-based and our users wanted access to those at the same place they were doing all their other work. One cool thing was the use of the WebBrowser's ObjectForScripting property that allowed for somewhat seamless integration between the desktop app and the web app being hosted inside.

Travis Heseman
I can support this answer. I have managed to host the MainForm of native windows appliations inside a SmartPart, including the GoogleEarth render window.
Marcel