[Okta Webinar] Learn how to a build a cloud-first strategyRegister Now

x
?
Solved

Is ASP.net solution faster than VB.net solution?

Posted on 2007-10-21
42
Medium Priority
?
2,724 Views
Last Modified: 2013-11-26
I have a difference of opinion with my client over the application architecture that will run on intranet an not on internet.

Which one of the solutions will be faster  a web application in ASP.net or a windows application VB.net application?

If possible please also give me some technical points to support your argument.
0
Comment
Question by:Sethi
  • 18
  • 12
  • 10
  • +1
41 Comments
 
LVL 11

Accepted Solution

by:
cmhunty earned 1000 total points
ID: 20117477
This really depends upon your requirements.....

Things to consider:
* The amount of processing by the application. Old slow desktop PCs running a Windows application could have problems if the application is very processor intensive. Equally
* The amount of users. If you have a large amount of users running a web app with a server that cannot handle the traffic you could have problems.
* The amount of updates to the software. Web apps will only need to have the app updated on the server. Windows apps will need to have every installation updated.
* Functionality required in the application. Some functionality which is available very simply in Windows apps would be quite complicated to code in a web app
* Software development skills - maybe you have more expertise in a certain area which may lead to a better application
* The web server. Can the server handle the traffic sufficiently?

Taking all into account, you should make your decision......
0
 
LVL 18

Author Comment

by:Sethi
ID: 20117632
The client first wanted the VB.net solution and then was convinced of ASP.net solution. We are in process of dicussion and this is more details on which the project decision needs to be based:

1. The intranet solution will have about 10 concurrent users.

2. The look and feel of the application even if done in ASP.net will be like Winform application where no IE Toolbar will be displayed and controls like Treeview and Gridview will be used.

3. The client would like to install the ASP.net application on the user machine the way VB.net application is installed. For that he says that we can use the following method to create an exe from a ASP.net application: http://msdn2.microsoft.com/en-us/library/ms998367.aspx

4. He feels that ASP.net application runs faster on intranet and are more secure.

I am not allergic to any solution. All I want to give him is good reasoning in favor of what he wants and I personally feel that Winform application is what he is looking for.
0
 
LVL 11

Expert Comment

by:cmhunty
ID: 20117680
Based on that feedback, I would confirm a few things.........
* Why does the client want to install the ASP.NET application on each user machine? If they feel the need to do that, they're totally defeating the object of implementing a web application and a WinForms solution would probably be better.
* ASP.NET are more secure? Would question on what the client bases this comment. If a Windows form application is coded correctly, it should be at least as secure, if not more so.

My personal opinion, for overall performance and ease of deployment, use and upgrade reasons would be an ASP.NET web application hosted on a reasonable spec web server. A reasonable web server should be able to handle 10 concurrent users with requests for pages and basic data processing. Upgrades would only need to be applied on the server and not on each individual machine making your life easier in the future.

In my experience, there's always going to be clashes with what a client thinks a developer should be doing and what you want to do. If you have a reasonable amount of experience and knowledge in the area, do your research (which you are!), take in advice from others and present feedback to the client with clear arguements, pros and cons for each solution and let them make the final decision. They are paying the money and all you can do is advise them. If they don't want to take your advice, there's not much more you can do. Make sure you have it in writing that you've advised downsides to the solution that they request and implement as requested.

All of the above is my opinion and others will feel different. Anyone else got any feedback?

Chris
0
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 
LVL 16

Expert Comment

by:MikeMCSD
ID: 20117917
Excellent answer Chris. I agree.
0
 
LVL 26

Assisted Solution

by:Rejojohny
Rejojohny earned 1000 total points
ID: 20119001
some of questions that you might want your client to answer if you consider windows application are
- are the users ever going to increase? If yes, how will new installations be handled if the application is a windows application?
- how will upgrades or fixes be rolled out to current users?
- each of the machine will require the .net framework installation. Who will maintain this installation i.e service pack installation, upgrades etc.
- some of the clients might install some software on their pc which might clash with your applications requirements. Who will debug those problems and solve them?
- you will need to have good network connection between the clients and the database server (i.e if you architecture does not have a application server) so that the database access is fast and the user gets a reasonable response. you might land is a situation where one user has a very good response and another one has a very bad response. who is responsible for solving such problems? does the client have enough knowldge or does he have a team to handle their network ..
- etc etc

whereas in a asp.net or web application you will having the application on ONE web server connected to ONE database server.. maybe you will have the database on the same machine as your web server .. so no issues in roling out upgrades, no issues with maintaining the server, the network connection etc etc

Rejo
0
 
LVL 18

Author Comment

by:Sethi
ID: 20119789
Hi Rejo. I guess you missed a point - the client wants to create an exe of the ASP.net project and wants to run this project in the intranet rather than on web server. So I guess we will requiring everything that we require in a winform project on a machine.
0
 
LVL 26

Expert Comment

by:Rejojohny
ID: 20122991
>>the client wants to create an exe of the ASP.net project and wants to run this project in the intranet rather than on web server. So I guess we will requiring everything that we require in a winform project on a machine.

first of all web application cannot be compiled as a exe. Second, regardless of whether it is running on intranet or internet, you will need a web server to run a web application.

so what is the point that your clients are making? Do they understand the difference between a web and a windows application?

Rejo
0
 
LVL 18

Author Comment

by:Sethi
ID: 20123163
He has given me a link that he says claims that web application can run like an exe:
http://msdn2.microsoft.com/en-us/library/ms998367.aspx

Let me ask him for more of these where Microsoft claims its possible. I have however not heard of that till this moment and I am still not convinced.
0
 
LVL 26

Expert Comment

by:Rejojohny
ID: 20123207
Can you also please ask where in the above link does he see information about deploying web application as a exe?
0
 
LVL 11

Expert Comment

by:cmhunty
ID: 20123236
........and why he's insistant on deploying a web app on each machine! That bit seems crazy to me!
0
 
LVL 26

Expert Comment

by:Rejojohny
ID: 20123276
yes, its a crazy requirement .. and even if we he wants the application to be deployed in each machine, then why a web application .. i think he needs to do some research/reading on what he wants before making suggestions to you and I am sure you might be able to say that to him directly .. :-)  .. even if you give him pros and cons on web and windows application, I am not sure whether he will understand if he has his basics wrong ..
0
 
LVL 18

Author Comment

by:Sethi
ID: 20123285
He is insisting because he feels that ASP.net is faster than Windows application and also ASP.net is more secure than Windows. That's why I started the thread because I did not agree - but wanted to be very sure.

He is a reasonable guy and understand a lot of tech stuff - but this is one point where he is not understanding my point of view and I can not blindly continue working and charge him for that - because if at end of the day he doesn't get what he should, then I morally have not done my job :((
0
 
LVL 26

Expert Comment

by:Rejojohny
ID: 20123331
>>He is insisting because he feels that ASP.net is faster than Windows application and also ASP.net is more secure than Windows
that is not always true .. its purely a deployment issue and also depends on the kind of servers you have and how secure your network is .. there is no inbuilt facility in asp.net which makes in more secure or faster than a windows application ..

Rejo
0
 
LVL 18

Author Comment

by:Sethi
ID: 20123392
I agree :(( but I am finding it so difficult to explain him as he is fixed on this idea.

My only fear is that this ASP.net web application would not convert into an EXE at end of the project and he is going to get the shock of his life. I really dont want that to happen to him :( He is a very kind and nice bloke - but somehow he is convinced that this can be done. I am not sure why? and how?

I searched the net and also spoke to a few guys I know in ASP.net and they all said that they have neither heard anything like that nor they have tried that. So its a major confusion now :((
0
 
LVL 11

Expert Comment

by:cmhunty
ID: 20123416
As Rejo says, "faster" is based on so many more things than the programming architecture. Intrinsically, whatever your technology, whether it be ASP.NET application or Windows Forms app, a large majority of the code will be the same as it will be the same .NET libraries accessing and manipulating the same data. The presentation layer on both technologies should prove insignificant in comparison to the data side if well designed.

The speed is more likely to be dependant upon network setup, database access, web server processing etc.
0
 
LVL 11

Expert Comment

by:cmhunty
ID: 20123432
You can (and should) compile ASP.NET to dll libraries. I would think this is what he's talking about. Not exes though.
0
 
LVL 18

Author Comment

by:Sethi
ID: 20123485
I am already creating my application as a web application, so DLL's are created in that. But he wants the users to come to his site and the download a trail 30 days version of this ASP.net project and run on their machines before buying it. At the same time, he doesn't want them to look at the source code. I am done everything in my books to convince him that this is what WinForm application is meant to do but sadly he sticks to ASP.net and says that it is possible to create exe. I have searched google but did not find any link. I am now searching MSDN forums and some other forums to see if that is possible.
0
 
LVL 11

Expert Comment

by:cmhunty
ID: 20123519
Aha!! Makes a bit more sense! You can create an MSI to deploy the application! That will also create an exe as well. Tutorial at http://www.15seconds.com/issue/030806.htm
0
 
LVL 26

Expert Comment

by:Rejojohny
ID: 20123612
>> he wants the users to come to his site and the download a trail 30 days version of this ASP.net project
that makes sense .. its a project deployment/setup exe application that he is looking for .. that is possible ..

so he wants a web application which users can download and run on their machine .. that is possible .. but the users who download will need to deploy it on a web server .. regardless of whether the server is on a remote machine or the his own personal PC ..

now the question is what is this application supposed to do? is it a standalone application? is this a multi-user application? what is that you mentioned above about 10 users? who are these 10 users?

Rejo
 
0
 
LVL 11

Expert Comment

by:cmhunty
ID: 20123668
If you want to be certain of protecting the code, managing the users and making it harder for the site to be hacked, you should consider hosting the site yourself. Then you can manage the users. If users download the dlls, there are plenty of programs out there that can decompile dlls so they aren't really safe.
0
 
LVL 18

Author Comment

by:Sethi
ID: 20123744
Ok...if the user decides to buy this web application, he would install this exe on each client machine and make one of his machines as server machine where the IIS will act like a web server (I guess this is what he wants) and SQL Server would reside. The ASP.net exe will be installed on all 10 users client machines. When the exe is clicked it will run IE7 in a desktop type interface without any toolbars and then the user will work on this application the way they do on any website.

I dont know why ASP.net for all this as Win applications are meant to do that. I am going through the link provided by you and would like to see whether it is actually possible to run a ASP.net application without HTML, ASPX and CSS files!!
0
 
LVL 11

Expert Comment

by:cmhunty
ID: 20123766
You would only ever run the installer exe on the server. All of their clients would be able to access through their browser as any other website!
0
 
LVL 18

Author Comment

by:Sethi
ID: 20123921
I guess there is some confusion now. The link is only for the ease of deploying the web application. It doesn't talk about converting the web application into an exe and hidding the web pages. the site after deplyment still runs like any other website with its pages in root folder or any other folder. So we can not hide the pages, or run a ASP.net application as an exe.
0
 
LVL 26

Expert Comment

by:Rejojohny
ID: 20123965
when you compile a asp.net application .. you will get dll for all the code-behind .vb or .cs files .. when you deploy, you will copy all those dlls and the UI pages (aspx, acsx etc) ...

yes, a asp.net application cannot be run as an exe .. after deplying it on a web server, you need to access it using a web browser and typing the URL in it ..

Rejo
0
 
LVL 18

Author Comment

by:Sethi
ID: 20124066
:-) Back to square one..LOL
0
 
LVL 11

Expert Comment

by:cmhunty
ID: 20124153
You're a mind reader! :-)

I think that at least your understandings of the situation should be better now and you should be able to describe the pros and cons to the client which should be enough to go from there.
0
 
LVL 18

Author Comment

by:Sethi
ID: 20124204
Guys, it was a wonderful and healthy discussion and I really appreciate your time on this. I have been in EE for quite some years now active mainly in VB sections and lately have been spending a little less time due to a very busy work schedule - but I feel so proud to be a member of this family. All I now hope is the my client, who is such a wonderful person understands what we are trying to say and takes so decision. Thank you all again for all this discussion, I will not be splitting the points and would be posting a seperate thread for 500 points for each one of you as I guess it is worth each and every minute we spent on this discussion.
0
 
LVL 26

Expert Comment

by:Rejojohny
ID: 20124292
glad to be of some help .. all the best talking to your client :-)

Rejo
0
 
LVL 11

Expert Comment

by:cmhunty
ID: 20124328
Yeah, good luck

Chris
0
 
LVL 18

Author Comment

by:Sethi
ID: 20124583
This is what the client has posted just now to convince me that compilation is possible. Any response?
http://msdn2.microsoft.com/en-gb/library/15ec5bbf-0feb-4755-8023-9dd038998986.aspx
0
 
LVL 18

Author Comment

by:Sethi
ID: 20124610
What I am trying to convince him is that ASP.net pages are always compiled before they are displayed, but they are not EXE applications. Any way to explain this? I am sure he has his reasons to believe in what he is saying, but I am not able to explain :-(
0
 
LVL 26

Expert Comment

by:Rejojohny
ID: 20124865
that is a link to the compilation tool that you can use using commandline statements.. same that internally gets called when you compile using Visual studio .. no where does that mention that you can compile a web application to a exe . .

>>Any way to explain this
http://samples.gotdotnet.com/quickstart/aspplus/doc/deployment.aspx .. you can gind similar links in MSDN
http://samples.gotdotnet.com/quickstart/aspplus/doc/businessobjs.aspx

http://msdn2.microsoft.com/en-us/library/ms178466.aspx ..
from the above link
In order for application code to service requests by users, ASP.NET must first compile the code into one or more assemblies. Assemblies are files that have the file name extension .dll. You can write ASP.NET code in many different languages, such as Visual Basic, C#, J#, and others. When the code is compiled, it is translated into a language-independent and CPU-independent representation called Microsoft Intermediate Language (MSIL). At run time, MSIL runs in the context of the .NET Framework, which translates MSIL into CPU-specific instructions for the processor on the computer running the application.
0
 
LVL 18

Author Comment

by:Sethi
ID: 20124971
:-( I know. But he is not understanding and I as a professional can not see him in loop after a weeks time :((
0
 
LVL 18

Author Comment

by:Sethi
ID: 20125199
Ok explain me one thing. If I create a project with lets say 2 aspx files in it say default.aspx and employees.aspx. Now through the compilation process when I am publishing the site, I choose to pre-comipile method. Now would I be required to keep my source code aspx files on the website or only placing the dll's will do the job?
0
 
LVL 26

Expert Comment

by:Rejojohny
ID: 20125221
only dll and aspx pages ..
0
 
LVL 18

Author Comment

by:Sethi
ID: 20125255
and the aspx pages will display the source code if we download it?
0
 
LVL 26

Expert Comment

by:Rejojohny
ID: 20125376
yes, but remember that aspx pages just have formatting code and not the application code .. i.e. unless you write you write server side code in the aspx pages

http://www.securitypronews.com/it/applicationdevelopment/spn-19-20031006PrecompileWebPageAndHideItFromPreyingEyes.html
0
 
LVL 18

Author Comment

by:Sethi
ID: 20125404
agreed :) Thanks.
0
 
LVL 18

Author Comment

by:Sethi
ID: 20125429
Rejo..here is the link of my appreciation for the help:
http://www.experts-exchange.com/Microsoft/Development/.NET/Q_22909745.html
0
 
LVL 26

Expert Comment

by:Rejojohny
ID: 20125529
Sethi, I was afraid about that someone might object about giving points without a question .. now that angelIII has objected, I think you will need to open this question and split as you think approriate ...

0
 
LVL 18

Author Comment

by:Sethi
ID: 20127996
Yup. I am sorry about that. I have posted a question to him and awaiting his answer and then will do the needful.
0

Featured Post

Veeam and MySQL: How to Perform Backup & Recovery

MySQL and the MariaDB variant are among the most used databases in Linux environments, and many critical applications support their data on them. Watch this recorded webinar to find out how Veeam Backup & Replication allows you to get consistent backups of MySQL databases.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Developer tools in browsers have been around for a while, yet they are still heavily underused by developers. Developers still fix html or CSS then refresh page to see effect, or they put alert or debugger in JavaScript and then try again and again …
Introduction A frequently used term in Object-Oriented design is "SOLID" which is a mnemonic acronym that covers five principles of OO design.  These principles do not stand alone; there is interplay among them.  And they are not laws, merely princ…
This video teaches users how to migrate an existing Wordpress website to a new domain.
Learn how to set-up PayPal payment integration in your Wufoo form. Allow your users to remit payment through PayPal upon completion of your online form. This is helpful for collecting membership payments, customer payments, donations, and more.
Suggested Courses
Course of the Month19 days, 14 hours left to enroll

873 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question