Open Source Licensing Options for ASP.NET MVC Application?

I'm working on a personal project in ASP.NET MVC that I plan on making open source. In the past, I've open-sourced quite a few PHP scripts and UNIX-based stuff. For those, I typically went with a BSD/Apache style license, unless I was including a library that prevented it. On the Linux/PHP side of things, that usually meant something that was GPL-ed, thus still resulting in a fairly clear-cut arrangement.

For this project, however, I'm trying to figure out which licenses are even possible to apply to this project and not finding any good resource to answer the question. I know that the only "real" answer to this question would involve a lawyer. However, as this isn't something that's going to generate revenue, if I'm going to kick in $1000 toward the project, I'd rather hire a graphic designer or a usability expert to take a pass at the application than pay a lawyer.

This particular project also uses Subsonic for database access and Argotic for RSS parsing, further complicating the issue.

I know that I'm allowed to use all of those pieces and that I can redistribute my project that uses them all. However, what I'm left with is confusion over what the resulting project can/must be licensed under.

I can probably negotiate my way through the maze for the Subsonic and Argotic bits because they're already under open source licenses, but I can't be the only one trying to figure out what license I can apply to a project I write on top of ASP.NET MVC.

In response to the comments:

I'm not "scared" of anything. I'm just attempting to put the same care into the licensing and distribution of this eventual application that I am into the architecture and development of it. Beyond that, I've watched lives ruined because of not paying attention to the arguably byzantine intellectual property laws on the books today.

And, quite frankly, I've actually gotten a nasty letter in the past from the lawyer of an open source component that I included in an open source project of my own, but used a license that they weren't happy with.

Unfortunately, "an open-source license" isn't any more specific in legal terms than saying, "just use a web programming language and you'll be fine". GPL is clearly one of the most popular open source licenses out there and also one of the few that, on the face of it, can't be applied to ASP.NET MVC applications. I'm curious if there is an existing license that can actually be "compiled" with the other licenses of the components I'm using without throwing a legal "compiler" error.

I'm not saying the answer is simple (it's not). I asked the question because I'm genuinely interested in an answer that comes from a perspective of having examined the issue closely. When I initially posted it, I fully expected it to sit unanswered for a long time because it's not a simple question.


The final RTM answer has ended up that ASP.NET MVC itself has been released under the Microsoft Permissive License which is an OSI certified license. That license is very similar to the Apache, BSD and the rest of that family of licenses. The bottom line is that, under that license, you're fairly free to license your code however you see fit, even if your project includes the System.Web.Mvc DLL to make it bin-deployable.


ASP.Net MVC should ultimately become part of the core .Net framework. Once it is you won't need to redistribute it.

In the mean time you could apply any licence you like to your own code, but not redist the MVC assemblies with it. Users could download the current MVC preview themselves.


I don't really get what you're scared of. From my understanding Subsonic and ASP.NET MVC can be redistributed for either an open-source or commercial license, and you should be fine just as long as you don't use some sort of viral GPL license that needs to GPL everything.

You may try to read through the Free Software Foundation's reference on licenses that you can use for open source projects to try and get a feel for the kinds of licenses you may want to use.

链接地址: http://www.djcxy.com/p/13980.html

上一篇: 单独(exe,dmg)鞋

下一篇: ASP.NET MVC应用程序的开源许可选项?