Enable .NET 3.5 Features in Azure Cloud Service - asp.net

I have an application built using .NET Framework 4.5 deployed in Azure Cloud Service. So I use Windows Server 2012 OS Family (supports .NET 4.0 and higher). My application is referencing a tool that can only be run with .NET 3.5 features enabled. So I login into the remote desktop and enable .NET 3.5 features.
I read this article Windows Azure Execution Models stating that "a Cloud Services application shouldn't maintain state in the file system of its own VMs. Unlike VMs created with Windows Azure Virtual Machines, writes made to Cloud Services VMs aren't persistent;"
Do you think my changes in the server (enabling .NET 3.5 features) is not ideal? If yes, can you suggest of a way on how can I deploy a .NET 4.5 web application with .NET 3.5 feature dependency.

Do you think my changes in the server (enabling .NET 3.5 features) is
not ideal?
Yes if you're doing it manually via RDPing into the server. Because if for some reason your VM goes bad and Microsoft replaces that VM with another VM, your changes will be lost.
can you suggest of a way on how can I deploy a .NET 4.5 web
application with .NET 3.5 feature dependency.
Do take a look at Startup Tasks to install additional dependencies. They get executed when your role starts so you could enable the features (or do any software installs before the role starts). I haven't tried enabling the features personally (so I may be wrong) but take a look at this blog post which talks about installing these features through PowerShell or Command Line: http://blogs.msdn.com/b/sql_shep/archive/2012/08/01/windows-2012-and-net-3-5-feature-install.aspx

Related

.NET Core 5.0 Console with WebAPI

I once build a .NET Core Console App that contained a web host, so I could make controllers without using IIS. Isn't that possible in 5.0?
I need it to run as a service later. It used to be so easy :-)
I can't find any guides to that, but I can find guids addressing version 2.1.
Latest .NET Core project templates (and .NET 5 ones) use Kestrel by default.
You can find the related documentation here.
You can also find here specific documentation about running ASP .NET Core as a service in both Windows and Linux, and in the case of Windows, with and without IIS.

Software System Design Architecture IIS Server 7.5 and .NET Core (3.X or 2.X)( with Web API) compatibility issues & Design issues

We have a project to complete that involves using an Old Existing Web Application developed and deployed with following technologies:
-.NET Framework 4
-developed Using Visual Studio 2010 (VS2010)
-Windows Server 2008 R2 Enterprise (Service Pack 1)
-IIS Version 7.5
8 GB RAM
-Telerik\RadControls for ASP.NET AJAX Q3 2011
We have a new project that involves creating a Csv File uploader for the web application.
Our proposed plan was to UI uploader Csv File Uploader component on the Old Existing Web Application.
However, we Want to use Newer technology for the main quasi-ETL processing of the Csv Data.
As we Brainstorm, we came up with the following technologies that could be used for the main quasi-ETL processing of Csv Data.
.NET Core (3.X or 2.X)
Visual Studio 2019
However, we have to deploy the Old Existing Web Application ( which would contain the UI Csv File Uploader) and the new main quasi-ETL processing of Csv Data to the same Web Server which would mean using the following slightly old technologies:
-Windows Server 2008 R2 Enterprise (Service Pack 1)
-IIS Version 7.5
-8 GB RAM
I'm in the process of developing a - .NET Core (3.X or 2.X) Web application, and deploying it in an environment that uses:
-Windows Server 2008 R2 Enterprise (Service Pack 1)
-IIS Version 7.5
Please Keep in mind that both the Old Web Application and the New .NET Core application will be deployed on the same IIS Server 7.5
The Windows Server 2008 R2 Enterprise Server & IIS Server hosts a lot of important applications so I am concerned about what kind of modifications/update/add-on that I might have need to install.
-Does anyone know about any possible technical compatibility problems or troubles that I might face? If yes, what could it be?
-To elaborate, within the Control Panel's "Turn Windows Feature on or off", could you please tell me what might need to be enabled for .NET Core (3.X or 2.X)( with Web API) to work on said IIS Version 7.5?
-Also, may I please know if I have to install any Microsoft module executable ( or something similar)?
-Also, please feel free to suggest improvements Or tell me about any pitfalls/obstacles that I might face.

Deployment of ASP.NET vNext Application to Azure Cloud Services

Is it possible to deploy an ASP.NET vNext web application to Azure Cloud Services? And if yes, does it matter if it's build on the aspnet50 or the aspnetcore50 framework?
The Azure Cloud Service Visual Studio template, even in 2015 CTP seems to support only .NET Framework 4.x.
It's not supported yet but if you really want to you can do something like create a worker role setup script (which installs the kvm, kre etc.), then follow steps like this http://www.codeproject.com/Articles/331425/Running-an-EXE-in-a-WebRole-on-Windows-Azure to run it and bootstrap your aspnetcore50 app. It's not pretty or easy but it's the only way to run ASP.NET 5.0 stuff in a worker role at the moment.

Web API IIS Requirements

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

How to convert application written in asp.net 3.5 to 2.0?

How to convert an application written in asp.net 3.5 to 2.0? I have a system in which there is only .net 2.0 . But my application is written in 3.5. I published that app using an another system (3.5 framework) and then I copy that published folder to my system (2.0 framework)and configured in IIS.When i try to browse,i got version problem error.
.NET 3.5 is 2.0 with a few extra libraries. So you can run them on the same web site. In fact you cannot even set a web application to run under 3.5. It just runs under 2.0.
ASP.NET 3.5 is still running on the .NET 2.0 CLR, if you go into IIS you'll see that you can only pick 2.0 or 1.1
So, if you REALLY want to go back to 2.0, replace all 3.5 stuff with 2.0 stuff: see the lists below.
The new stuff after 2.0 up to 3.5 is:
NET framework 3.0:
Includes a new set of managed code APIs that are an integral part of Windows Vista and Windows Server 2008 operating systems and provides
Windows Communication Foundation (WCF), formerly called Indigo; a service-oriented messaging system which allows programs to interoperate locally or remotely similar to web services.
Windows Presentation Foundation (WPF), formerly called Avalon; a new user interface subsystem and API based on XML and vector graphics, which uses 3D computer graphics hardware and Direct3D technologies.
Windows Workflow Foundation (WF) allows for building of task automation and integrated transactions using workflows.
Windows CardSpace, formerly called InfoCard; a software component which securely stores a person's digital identities and provides a unified interface for choosing the identity for a particular transaction, such as logging in to a website
.NET framework 3.5:
It implement Linq evolution in language. So we have the folowing evolution in class:
Linq for SQL, XML, Dataset, Object
Addin system
p2p base class
Active directory
ASP.NET Ajax
Anonymous types with static type inference
Paging support for ADO.NET
ADO.NET synchronization API to synchronize local caches and server side datastores
Asynchronous network I/O API
Support for HTTP pipelining and syndication feeds.
New System.CodeDom namespace.
If your application uses any of the above, you'd need to strip it out and replace with something not on the lists.

Resources