I have MVC web application developed on dotnet framework 4.5.2 . This application has database in MS SQL server. I want to move DB from SQL server to GCP. Does .Net framework 4.5.2 support GCP? Or i will have to rewrite application in dotnet core with MVC .
I have gone through several blogs many of them has contradictory conclusion but all of these blogs specify that dotnet core supports GCP and hence I am not able to reach on conclusion whether dotnet framework 4.5.2 supports GCP or not. Does anyone has idea about this or any reference.
There are some diferentes ways to deploy an app in GCP. You can take a look in the following official documentation Compute Engine with .NET, App Engine with .NET, Kubernetes with .NET and APIs and .NET.
Related
I spent many hours trying to find some way to create a new .NET Core 3.1 web app under Windows subscription. I found that if you pick up the Runtime stack as .Net Core 3.1 (LTS) the only option is to create an app under the Linux. I tried to play with different regions and Sku and sizes as well but for all cases, it's just the same. There is no option to configure App Insight during the creation time either when using the Linux.
The interesting thing is that when I created the Web App under .net core 3.0 marked as current I was able to deploy .net core 3.1 web app and it all worked including the app insights stuff.
My question: is it just a bug in the Azure UI that you cannot create .net core 3.1 web app under Windows or there is some specific reason behind it?
This option is going to be available once the deployment of .NET Core 3.1 has been rolled out to all AppServices worldwide. So far, this is only been completed for Linux.
https://github.com/Azure/app-service-announcements/issues/217
https://github.com/Azure/app-service-announcements-discussions/issues/129#issuecomment-565620039
Windows hosted App Service option will be enabled once world wide rollout of 3.1 SDK to App Service backend is complete.
Since Windows AppServices have all required runtimes installed, you can select 3.0 and try to deploy your app regardles of what the portal says. I was able to host a WebApi in west Europe this week with .NET Core 3.1, but from what I read that might just have been luck.
Deploying a self contained version is probably also possible from what I read in the linked Github issue.
edit2:Note that the accouncement talks about the SDK. As of the writing of this post, most of the app services have the 3.1 runtime installed, while the SDK will take a while longer.
edit:
You can also check manually if your AppService has the runtimes installed already:
Go to Kudu (https://myappservicename.scm.azurewebsites.net/)
Open the Debug console (e.g. CMD)
type in dotnet --list-runtimes
I had the same problem. I could not get windows selected in Azure.
What I did was let Visual Studio create the App in my App Services. (Note the app insights!)
When this profile finished creating I went into the created App in the Azure portal. Settings - Configuration and changed the stack from 4.7 to .Net Core (Sorry this is in dutch, I hope you can manage...)
And now I also had the standard documents available which I did not have creating it in Azure portal! I changed it to only have index as landing page :
After I did this the homepage of my website showed up. Hope this helps someone!
I am adding an Azure Application Service Plan to my resource group. I'd like it to be a Linux Host for a .NET Core 3 Web API. Furthermore, I'd like to use Application Insights. However, when using the Azure Portal, the option to add Application Insights to a Linux .NET Core 3 application is greyed out. Does Application Insights not currently support. I have another Linux Web App that is using Node LTS as it's runtime and that allowed me to add Application Insights with no issue. Is there something special I need to do to add Application Insights to a .NET Core 3 Web API running in an Azure Linux Web App?
EDIT:
Here are some screenshots of what I am seeing
Code-less enablement of Application Insights for Asp.Net core is not yet supported for linux.
You need to do code-based enablement, which involves installing SDK nugets to your project as documented below:
https://learn.microsoft.com/en-us/azure/azure-monitor/app/asp-net-core
Update:
Linux support is added for .NET 6.0 onwards. Check doc:
https://learn.microsoft.com/azure/azure-monitor/app/azure-web-apps-net-core?tabs=Linux%2Cwindows
According to the docs, yes!
Supported scenarios The Application Insights SDK for ASP.NET Core can monitor your applications no matter where or how they run. If your
application is running and has network connectivity to Azure,
telemetry can be collected. Application Insights monitoring is
supported everywhere .NET Core is supported. Support covers:
Operating system: Windows, Linux, or Mac. Hosting method: In process
or out of process. Deployment method: Framework dependent or
self-contained. Web server: IIS (Internet Information Server) or
Kestrel. Hosting platform: The Web Apps feature of Azure App Service,
Azure VM, Docker, Azure Kubernetes Service (AKS), and so on. .NET Core
Runtime version: 1.XX, 2.XX, or 3.XX IDE: Visual Studio, VS Code, or
command line. Note
If you are using ASP.NET Core 3.0 along with Application Insights,
please use the 2.8.0 version or higher. This is the only version that
supports ASP.NET Core 3.0.
Auto-instrumentation for Application Insights for .NET Core apps is a high priority and work is planned to support the functionality. Stay tuned! Your feedback and patience are greatly appreciated! :)
When configuring an Azure App Service backend you can choose between either a managed NodeJs project that works with EasyAuth and EasyTables or a full .NET based backend project that you can download and work with.
This project is based on an ASP.NET MVC template using .NET Framework 4.6.
When you want to integrate the Azure NotificationHub, you need to add nuget package references to Microsoft.Azure.NotificationHubs which target dotnetstandard2.0.
How can I either integrate the NotificationHub into my existing .NET backend project or migrate my .NET Framework 4.6 based backend project to dotnetstandard?
d'oh.
As stated on Microsofts compatibility page, dotnetstandard2.0 requires .NET Framework 4.6.1. The template, an Azure App Service .NET Backend is based upon targets .NET Framework 4.6. So migrating this to 4.6.1 solved my problem.
How do I add .NET Core class library reference in Service Fabric App.
While I'm adding Class Library reference (.NET Core) in WebAPI app, showing Compatibility issues. Please find below What I did, using Visual Studio 2017.
File >> New Project >> Cloud >> Service Fabric Application
Name - FirstServiceFabricApp
Select a Template >> Stateless ASP.NET Core
Name - FirstStatelessAPI
Build and Run the Project. It works.
Although API Project Framework version is .NET Framework 4.5.2.
Added Class Library Project [builds on .NET Core 1.1] as reference into Stateless WebAPI Project. Showing compatibility issues-
Building the solution x64 platform.
My concerns are:
How do I take .NET Core Library reference in Stateless WebAPI Project [Service Fabric]
Should I go/develop with .NET Framework for Class Library which is compatible with Stateless WebAPI project.
I did Azure AD Authentication/Microsoft Graph in Azure APP Service, but never did for Service Fabric App. Whether Azure AD and Microsoft Graph implementation is same in this Stateless WebAPI App. Kindly provide some references on this.
You need to make your class library target a compatible framework e.g. net452 (or netstandard2.0 when it's supported like 2017 Q3)
The below link talks about converting a .net core to azure service fabric application.
It talks about statefulservice. Statelessservice is more or less similar to it.
http://dotnetextensions.blogspot.in/2018/04/convert-dot-net-core-application-to.html?m=1
When it comes to azure ad, i won't have much impact. You can continue to use the same thing
I notice that Azure Websites seems to offer .NET 3.5 and .NET 4.5. So I assume that one cannot deploy .NET 4.5.1 web applications yet?
I mention this as .NET 4.5.1 seems to have a useful new feature called "ASP.NET app suspension" which seems to pull back app images much more quickly into RAM. Perhaps Although this feature is targeted at hosters, one wonders whether this is a solution to the "Warm Up" issue?
Thanks in advance.
There are two questions here.
1) Azure Web Sites does support .NET 4.5.1, as in the update is installed on all Azure Web Site VMs. This has been available for several months now. So when you select 4.5, you are really running 4.5.1. The version reading "4.5" in the portal is misleading, unfortunately, and due to the fact the 4.5.1 upgrade did not change major/minor versions of framework so the "4.5" remains.
2) The specific "ASP.NET application suspension feature" unfortunately is part of a .NET 4.5.1 version that only ships in Windows 8.1/Server 2012R2. Azure Web Sites VMs currently only run Server 2012. Therefore ASP.NET application suspension is not supported in Azure Web Sites.
Azure Web Sites does other things to attempt to manage cold start performance issues (such as aggressive caching of compiled assemblies) but this is certainly a feature we would like to add in a future version of WAWS. Thanks for the feedback.
Cloud Services supports .NET 4.5.1
look here