Does the ASP.NET Web API require any particular version of IIS to run? I'm interested in knowing for each version of Web API, e.g. if Web API 2.0 requires IIS7.5 and Web API 2.1 requires IIS8 for instance. I can't seem to find this information anywhere.
ASP.NET Web API is part of ASP.NET stack, and therefore is supported on all IIS releases if the targeting .NET Framework is supported also on that Windows version.
First release of ASP.NET Web API (version 4.0.20710) and its patched version (4.0.30506) requires .NET 4, which covers all Windows versions starting from Windows XP. That means IIS 5.1 and above should support this release of Web API.
Second release, called ASP.NET Web API 2 (version 5.0.0), and above (aka 2.1 and 2.2) requires .NET 4.5, which covers all Windows versions starting from Windows Vista. That means IIS 7.0 and above should support ASP.NET Web API 2.*.
References:
The NuGet Packages:
https://www.nuget.org/packages/Microsoft.AspNet.WebApi
.NET Framework 4 Download (check System Requirements):
http://www.microsoft.com/en-us/download/details.aspx?id=22833
.NET Framework 4.5 Download (check System Requirements):
http://www.microsoft.com/en-us/download/details.aspx?id=30653
IIS Windows Matrix:
http://support.microsoft.com/kb/224609
Related
I need to deploy n ASP.NET 4.6.1 application into Azure App Service. Currently only ASP.NET 3.5 and ASP.NET 4.8 seem to be available options in the Azure portal. Is this a hard requirement, i.e. is it mandatory to update my ASP.NET solutions to 4.8 version prior to deploying to Azure App Service?
.NET Framework 4.8 builds on previous versions of .NET Framework 4.x by adding many new fixes and several new features while remaining a very stable product.
You can safely use ASP.NET 4.8 version in Azure App Service for your ASP.NET 4.6.1 application.
https://learn.microsoft.com/en-us/dotnet/framework/whats-new/#introducing-net-framework-48
I built a web app using dotNet 4.5. I went into IIS and created a new app pool but there was not 4.5 option, only 4.0 and 2.0. I went to install 4.5 and it says "already installed". I do a google search and see infact the registry and explorer show it to be installed.
What gives?
Although the .NET Framework Version column shows "v2.0" and "v4.0" for .NET Framework versions, these equate to ASP.NET 3.5 and ASP.NET 4.5.
Due to the internals of how application pools bind to .NET Framework versions, the actual version name written to configuration (and thus displayed in the tool) corresponds to the original .NET Framework file version.
Your question is tagged as IIS7 but the link information regarding .net versions is applicable.
Soruce: http://www.iis.net/learn/get-started/whats-new-in-iis-8/iis-80-using-aspnet-35-and-aspnet-45
If I have a server running on .NET Framework 4.0.
Will it be possible to run ASP.NET vNext on top of that? Or will a higher framework version be required?
As stated on Asp.NET vNext's page on GitHub the minimum requirements for Windows as follows:
Windows 7 or Windows Server 2008 R2.
.NET 4.5.1 for hosting in IIS
However, ASP.NET vNext will let you deploy different versions of the .NET Framework via NuGet packages for different apps on server as stated here. But it's not .NET Framework 4.0 anyway. So, you need the higher version.
Going to .Net SQLite (System.Data.SQLite) download page, there is different editions for each .Net framework and CPU architecture (32/64). I have a WPF/NHibernate application that works on my machine fine. My machine is Windows 8 x64 with .Net 4.5. Application is in .Net 4.0 and I used SQLite x32 for .Net 4.0 in it.
Problem is when application is deployed to customer's machine. Some of them have Windows XP, some have Vista and some have Windows 7 and 8. Many of them can not load database driver and I am forced to use another System.Data.SQLite. For example a x64 or a .Net 2.0 on them. I wonder why this happens and how it can be corrected. Specially when all customers have .Net 4.0 on their machines.
Any help is appreciated.
As this page explains, System.Data.SQLite assembly binaries for the .NET Framework 2.0 should work with the .NET Framework 4.0, but the reverse is not true. So if you need backward compatibility with older versions of the framework, you should use the older 2.0 assemblies.
There are other intricacies, such as how to properly use the Mixed Mode assembly with x64, so you should read that page carefully.
This only references requirements for clients:
http://msdn.microsoft.com/en-us/library/8z6watww%28v=VS.100%29.aspx
I am looking for similar documentation in reference not just for .NET 4, but ASP.NET 4 and what IIS versions, OS SP's, etc. are required. I would like to see if there are any pitfalls to requesting IT to install ASP.NET 4 and MVC 3 on our server. Don't want to have egg on my face :)
Per the documentaiton on the installer download for .NET 4.0 ( http://www.microsoft.com/download/en/details.aspx?id=17851)
Additional Requirements for Server
Installation
If you have to perform a server
installation, your computer must have
the following software in addition to
the basic requirements:
•Internet Information Services (IIS)
version 6.0 or later. To access the
features of ASP.NET, IIS with the
latest security updates must be
installed before the .NET Framework is
installed. ASP.NET is supported only
on Windows XP Professional, Windows
Server 2003, Windows Server 2008, and
Windows Server 2008 R2.
So it will run in IIS 6.0 or above. If you want to know which operating systems support asp.net 4.0, that would be any operating system that supports IIS version 6.0 or above. This jives with my comment on your question.
That said, the biggest thing to watch out for is that you have to configure any .NET 4.0 IIS application to use a different applicaiton pool than 2.0, 3.0, or 3.5. There's more info on this here: http://johan.driessen.se/posts/getting-an-asp.net-4-application-to-work-on-iis6
WinXP has IIS 5 and the .net framework and ASP.NET 4 is supported on it. For server technologies, IIS6 and newer are supported, as Server 2003 which has IIS6 is the oldest server technology that supports ASP.NET 4.