ASP.NET Licensing – Requirements for Publishing and Distribution

asp.netlicensing

I started developing websites using PHP. I have read many times that PHP is free and open source which is an advantage over ASP.net.

However, due to my current job requirements, I had to switch to ASP.net which is pretty good. Now after developing few applications, I am wondering how can I publish them for free. As PHP is free and opensource, it was never an issue for me.

What's bothering me is this.

Suppose I developed a web application using Visual Studio Express (or Professional version or any other version)

  • Do I need any special permission/license from Microsoft to host my application on Internet
  • If I create a desktop application and want to distribute it for free on internet, is any license required.

  • If no, then what are microsoft licenses all about and how is PHP free and ASP is not free

Thanks!

Best Answer

You are not authorized to distribute (as well as sell, decompile, etc.) Visual Studio itself. This doesn't apply to applications you create with Visual Studio. Those can be licensed under very permissive licenses, like Microsoft Public License (MS-PL), BSD, etc.

The same is true for ASP.NET (note that .NET Framework source code is available from Microsoft publicly, but is copyrighted).

ASP.NET MVC is licensed under Apache License 2.0, so it's a different stuff.

If no, then what are microsoft licenses all about and how is PHP free and ASP is not free

Politics.

If you want a more serious answer:

  • PHP is said free because you can easily setup a free LAMP stack without paying anything to anyone,

  • ASP.NET (because you're talking about ASP.NET, not ASP, are you?) reasonably requires Windows, which is a copyrighted, closed-source application. Proponents of Microsoft would say that Mono exists, but there are no well-known cases of easy industrial-scale deployment of web applications with Mono on Linux.

Free, here, is not about licenses, but about how much do you pay for software in order to deploy a web application to a server. This doesn't take in account neither the cost of hardware, nor the salary of a DBA.