Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Some of my recent clients are asking for remote connections to the office server, for standalone work, etc, in winForm applications.

Since the concept of the web is remote connection to a server both of data and resources, it should be possible to place both of this in cloud and have the winForm apps connect to it as if web Apps.

As any one tested this, is working like this?

Is it fast enough?

Is it secure?

What is the best cloud host for this type of work ?

share|improve this question
3  
I think I'm going to post this every time someone says 'Cloud': dilbert.com/strips/comic/2011-01-07 –  ChrisAnnODell Mar 18 '11 at 14:55
4  
How dare you insult THE cloud, the cloud punishes those puny weaklings who try to insult THE cloud. –  Mercfh Mar 18 '11 at 14:57
1  
Someone's been sucked into jargin. You can do this with any of the free databases and a language capable of programming a web service. –  Steve Evers Mar 18 '11 at 14:59
2  
Has anyone tested remotely accessing an application over the Internet? I'd say yes. Ever heard of web sites? –  JohnFx Mar 18 '11 at 15:09
3  
@Mercfh: I was the downvoter - and I did so because the question completely lacks insight, research and experience while propagating uninformed use of buzzwords. I wasn't going to openly hate on the OP, but now that you've asked... I guess I have to be the bad guy. –  Steve Evers Mar 18 '11 at 17:44
show 1 more comment

4 Answers

up vote 8 down vote accepted

Architecturally there is nothing to prevent you from building this. I would, however, recommend building a web service (or WCF app) for your Winform app to call instead of directly calling the database from the app.

We've had a lot of success building MS Click-Once smart clients that do exactly that. Separating out the code that calls to the DB isolates your Winform app from having to know what SQL to use. Additionally, if at somepoint down the road the business requirements change and you need to build a web app instead (or in addition to) the Winform app, your new web app can call the same web service and be up and running that much quicker.

share|improve this answer
1  
+1: It's a safe bet to use that architecture even if you're only planning for LAN deployment. It's easily developed, easily secured, has the opportunity to scale well, and supports internet deployment. –  Steve Evers Mar 18 '11 at 14:58
    
@SnOrfus - my thoughts exactly. –  Walter Mar 18 '11 at 16:33
add comment

Connect to the office network with a VPN. No need to rebuild the winforms app assuming they can connect to the database (network admins love to deal with this kind of stuff).

If you wanted clients or business partners/non employees to connect, that's another issue.

share|improve this answer
add comment

One thing to keep in mind. I recently attended Azure training and as was pointed out by the instructor some countries legally require you to keep your database on-site. You can host your application in the cloud, but the database has to reside on company grounds.

That said I'm not sure what the cloud gets you that hosing the web site/service on-site doesn't. Nothing that you've posted so far indicates to me that the cloud is the appropriate decision. What are your needs? Remote access can just as easily be done on-site.

share|improve this answer
add comment

Yes and no

Firstly you need to define what you mean by "In the cloud";

Putting aside that issue.

There should be now problems what so ever.

I had one project (Winform) that runs in this manner.

i.e. Fat client (Winform) with a public facing SQL server.

It works well, however the only downside is the client(s) require an internet connection.

Unless you plan to have some kind of redundancy built into the application eg local database that holds transactions until a connection can be made, upon which the transactions are merged.

share|improve this answer
    
There is one (1) problem: how do you secure the sucker? This is the very problem that plagues distributed applications. –  Berin Loritsch Mar 18 '11 at 19:06
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.