473,395 Members | 1,623 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,395 software developers and data experts.

ASP.NET as a Client App

I have a ASP.NET app that my users would like to be able to access remotely
while out of the office (i.e. where they will have no internet connection).
Rather than rewrite the whole thing as a traditional windows forms app, I'd
like to deploy the actual web project.

All my users have good laptops, and I've been able to install MSDE and IIS
on them, deploy the project, and everything runs fine. Only one person will
ever hit the localized IIS at one point in time, and performance is
acceptable (but not as good as I'd like).

My question is, is there a better way to deploy a ASP.NET web project in a
scenario like this without using IIS? We're a small shop (2 developers) and
the bulk of our time will always be spent working on the "main server"
website, we'll probably never have time to write and maintain a second UI,
even though the bulk of our logic is in class files.
Mar 7 '06 #1
4 1037
I've seen your solution used a hundred times for small groups of users. If
your solution works ok for a small group then there should be no reason why
you cant continue using it. Look at it from a cost persepective if nothing
else.

Your options though also include using a redistributable version of Cassini
as part of your deployment, so you could in theory package all this to work
with a smaller scale webserver at least.

http://www.devx.com/tips/Tip/30771

Or, hosting the ASP.NET Runtime.

http://msdn.microsoft.com/msdnmag/is...e/default.aspx

Me - If no one is complaining, I'd probably go with what your doing and save
myself a lot of rework.
--
Regards

John Timney
Microsoft MVP

"Karl Pierburg" <Ka**********@discussions.microsoft.com> wrote in message
news:BF**********************************@microsof t.com...
I have a ASP.NET app that my users would like to be able to access remotely
while out of the office (i.e. where they will have no internet
connection).
Rather than rewrite the whole thing as a traditional windows forms app,
I'd
like to deploy the actual web project.

All my users have good laptops, and I've been able to install MSDE and IIS
on them, deploy the project, and everything runs fine. Only one person
will
ever hit the localized IIS at one point in time, and performance is
acceptable (but not as good as I'd like).

My question is, is there a better way to deploy a ASP.NET web project in a
scenario like this without using IIS? We're a small shop (2 developers)
and
the bulk of our time will always be spent working on the "main server"
website, we'll probably never have time to write and maintain a second UI,
even though the bulk of our logic is in class files.

Mar 7 '06 #2
Thanks, that's very helpful, and re-assuring.

Any downsides / upsides to using Casini over IIS? Would Cassini handle a
scenario like mine, with one visitor (or two, if I'm troubleshooting) at a
time any better or worse than IIS?

Finally, I like the implications that I could Add Casini to my install page,
can I do something similar with IIS if I choose to say on that path?

Thanks for your help.

"John Timney ( MVP )" wrote:
I've seen your solution used a hundred times for small groups of users. If
your solution works ok for a small group then there should be no reason why
you cant continue using it. Look at it from a cost persepective if nothing
else.

Your options though also include using a redistributable version of Cassini
as part of your deployment, so you could in theory package all this to work
with a smaller scale webserver at least.

http://www.devx.com/tips/Tip/30771

Or, hosting the ASP.NET Runtime.

http://msdn.microsoft.com/msdnmag/is...e/default.aspx

Me - If no one is complaining, I'd probably go with what your doing and save
myself a lot of rework.
--
Regards

John Timney
Microsoft MVP

"Karl Pierburg" <Ka**********@discussions.microsoft.com> wrote in message
news:BF**********************************@microsof t.com...
I have a ASP.NET app that my users would like to be able to access remotely
while out of the office (i.e. where they will have no internet
connection).
Rather than rewrite the whole thing as a traditional windows forms app,
I'd
like to deploy the actual web project.

All my users have good laptops, and I've been able to install MSDE and IIS
on them, deploy the project, and everything runs fine. Only one person
will
ever hit the localized IIS at one point in time, and performance is
acceptable (but not as good as I'd like).

My question is, is there a better way to deploy a ASP.NET web project in a
scenario like this without using IIS? We're a small shop (2 developers)
and
the bulk of our time will always be spent working on the "main server"
website, we'll probably never have time to write and maintain a second UI,
even though the bulk of our logic is in class files.


Mar 8 '06 #3
"Karl Pierburg" <Ka**********@discussions.microsoft.com> wrote in message
news:55**********************************@microsof t.com...
Thanks, that's very helpful, and re-assuring.

Any downsides / upsides to using Casini over IIS? Would Cassini handle a
scenario like mine, with one visitor (or two, if I'm troubleshooting) at a
time any better or worse than IIS?

Finally, I like the implications that I could Add Casini to my install
page,
can I do something similar with IIS if I choose to say on that path?

Thanks for your help.

"John Timney ( MVP )" wrote:


There is one major downside to using IIS: it's a target. It takes an
impressively small amount of time for an unprotected IIS instance to get
infected once exposed to the public Internet. Unless you specifically locked
down each and every user's local install of IIS, you've left them extremely
vulnerable. Once one of those laptops gets infected, your user is going to
jack that machine back into your LAN the next time they are in the office
and now you've got an infected IIS server running inside your corporate
firewall. Before you know what's going on, your main IIS server(s) - the
ones you thought were safe because they're behind your firewall - will
probably be infected as well. There's a mess just waiting to happen.

Cassini, I believe, will mitigate a great deal of risk in it's default setup
because it will only accept local connections. Of course, you can lock-down
IIS, including restricting it to local connections, but you have to take
responsibility for making these changes yourself and keeping the machines
patched and training your users to always, always, always keep their local
firewalls running, and etc, etc, etc, etc...

Please think about security as you are designing your systems. The world
does not need another batch of infected IIS instances trying endlessly to
spread some virus/worm to every other machine they can find.

Good luck,
Ryan LaNeve
Mar 8 '06 #4
Valid points Ryan, Karl did mention that his users had no internet
connections when using the local apps but I think you have answered the
questions he had perfectly and added some extra thoughts for him.

IIS is not really a packagable application. I personally have never
packaged Cassini for re-distribution, but it does appear that it can be
done, and as Ryan points out, given it only accepts local connections may be
a better solution in this instance. That said, as long as you IIS instances
are patched as they should be you should have few issues. IIS can be locked
down to specific IP's or total number of concurrent users. You'll need to
play to find out how to configure it for your scenario.

Of course you can always also consider using Mono as a local install. I
know that its install steps could be packaged up and its something else to
consider for any platforms your having trouble deploying into due to lack of
support.

--
Regards

John Timney
Microsoft MVP

"Ryan LaNeve" <ry**@no-laneve-spam.com> wrote in message
news:Oy**************@TK2MSFTNGP12.phx.gbl...
"Karl Pierburg" <Ka**********@discussions.microsoft.com> wrote in message
news:55**********************************@microsof t.com...
Thanks, that's very helpful, and re-assuring.

Any downsides / upsides to using Casini over IIS? Would Cassini handle a
scenario like mine, with one visitor (or two, if I'm troubleshooting) at
a
time any better or worse than IIS?

Finally, I like the implications that I could Add Casini to my install
page,
can I do something similar with IIS if I choose to say on that path?

Thanks for your help.

"John Timney ( MVP )" wrote:


There is one major downside to using IIS: it's a target. It takes an
impressively small amount of time for an unprotected IIS instance to get
infected once exposed to the public Internet. Unless you specifically
locked down each and every user's local install of IIS, you've left them
extremely vulnerable. Once one of those laptops gets infected, your user
is going to jack that machine back into your LAN the next time they are in
the office and now you've got an infected IIS server running inside your
corporate firewall. Before you know what's going on, your main IIS
server(s) - the ones you thought were safe because they're behind your
firewall - will probably be infected as well. There's a mess just waiting
to happen.

Cassini, I believe, will mitigate a great deal of risk in it's default
setup because it will only accept local connections. Of course, you can
lock-down IIS, including restricting it to local connections, but you have
to take responsibility for making these changes yourself and keeping the
machines patched and training your users to always, always, always keep
their local firewalls running, and etc, etc, etc, etc...

Please think about security as you are designing your systems. The world
does not need another batch of infected IIS instances trying endlessly to
spread some virus/worm to every other machine they can find.

Good luck,
Ryan LaNeve

Mar 8 '06 #5

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

5
by: Matt | last post by:
I think this is the basic concept in ASP server-side development. My boss told me web application is NOT client-server application. I argued with him because browser is the client, and the server...
15
by: Michael Rybak | last post by:
hi, everyone. I'm writing a 2-players game that should support network mode. I'm now testing it on 1 PC since I don't have 2. I directly use sockets, and both client and server do...
18
by: cjl | last post by:
Hey all: I know that it is silly in the age of Google to 'lose' something on the internet, but I recently checked out a project that had implemented a database with a subset of SQL in pure...
2
by: Raquel | last post by:
How do I know whether the 'runtime client' and the 'application development client' are installed on my machine? When I issue the command "db2licm -l", it gives the following output: Product...
6
by: Ken Allen | last post by:
I am relatively new to .Net and C#, but I hav ebeen programing in other languages and done some COM work for a number of years. I am attempting to understand how to map an older program...
4
by: rs | last post by:
how I the client tell the server that the socket is closed? or this there an even that informs the server that the clients socket is close? Oh, I am using vb.net 2003 Thanks
2
by: J Huntley Palmer | last post by:
I am having a horrific time integrating uw-imap's c-client for imap support in php. The problem is a whole bunch of "Text relocation remains referenced against symbol" errors during linking....
0
by: khu84 | last post by:
Here is client server very simple code, seems to work with telnet but with with web client code gives blank output. Following is the server code:- <?php function...
2
by: nsaffary | last post by:
hi I hava a client/server program that run correctly when i run it in one computer(local) but when I run client on a one computer and run server run on another, connection does not stablish.(I set...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.