In 2016, Microsoft redesigned the core architecture of ASP.NET to meet the emerging trends in web application development. It released ASP.NET Core as an open source and cross-platform framework for developing web application, web services, and cloud-based applications. Hence, you can use ASP.NET Core as an open source framework to curtail web development cost significantly. Also, you can run the ASP.NET Core applications in three distinct platforms – Windows, Linux and MacOS. You even have option to deploy the applications in a number of ways.
Microsoft further allows you to migrate your existing applications to ASP.NET Core. While migrating to the redesigned version of ASP.NET, you have to follow the multiple step process recommended by Microsoft. Also, you can use Visual Studio 2017 to upgrade your existing applications to ASP.NET Core. But you must remember that ASP.NET Core is comes with a myriad of new features and enhancements. Hence, it becomes essential to prepare a checklist of points to upgrade the existing applications to ASP.NET Core smoothly.
Checklist of Key Points for Upgrading Existing Applications to ASP.NET Core
Unified Programming Model
ASP.NET Development allows you to create both web applications and web APIs using a single framework – ASP.NET Core MVC. In addition to supporting model-view-controller (MVC) programming paradigm, ASP.NET Core MVC also comes with several robust features like routing, filters, dependency injection, web APIs, tag helpers, Razor view engine, and model binding and validation. You must understand the important features of ASP.NET Core MVC, and follow specific steps to upgrade your existing ASP.NET MVC applications properly.
In addition to supporting three major platforms, ASP.NET Core allows you to host and deploy the applications in a number of ways. You still have option to publish the applications to IIS. But ASP.NET Core enables you to publish the applications as self-contained apps containing all resources required to run seamlessly on multiple platform runtimes. At the same time, you can even deploy the application in the cloud, and choose from popular cloud platforms like Microsoft Azure and Amazon Web Services (AWS). Hence, you must decide the right deployment option to run the application smoothly and make it deliver richer user experience.
Unlike ASP.NET, ASP.NET Core supports three major operating systems. But ASP.NET is a mature and popular web framework. While developing cross-platform web applications, you have to target .NET Core instead of .NET Framework. You still have option to create Windows-based web applications by targeting .NET Framework. Hence, you have option to choose from two targeted frameworks – .NET Framework and .NET Core – while using ASP.NET Core. But .NET Core does not support some of the legacy APIs provided by .NET Framework. Hence, you must check the compatibility of the APIs used by your existing application with .NET Core and ASP.NET Core.
As mentioned earlier, ASP.NET Core allows you to choose from multiple deployment options. It even allows you to choose from several web servers. You can deploy the Windows-based applications on a cross-platform and lightweight web server like Kestrel. Likewise, you can also deploy the applications on WebListener which supports both .NET Framework and .NET Core. However, each web server has its own pros and cons. For instance, Kestrel does not support multi-port binding, whereas WebListener does not require you to use a reverse proxy server. That is why; you must choose the right web server before migrating the existing applications to ASP.NET Core.
Integrated Development Environment (IDE)
While migrating to ASP.NET Core, you can take advantage of a robust IDE like Visual Studio 2017. The latest version of Visual Studio is cross-platform. But it was originally developed for Windows platform. Hence, you have to look for alternatives while using platforms like MacOS or Linux. You can always accelerate cross-platform ASP.NET Core application development by opting for Visual Studio Code. You have option to download specific edition of Visual Studio Code according to your targeted platform. Also, the IDE is designed with features to deliver optimal coding and debugging experience across Windows, Linux, and MacOS.
Multi Step Migration Process
Microsoft requires you to follow multi step migration process to port the existing applications to ASP.NET Core. You must understand the migration process clearly to understand the changes included in the revamped version of ASP.NET. Also, you need to understand the right way to migrate identity and authentication. At the same time, you also need to follow the process exactly to migrate various HTTP modules to HTTP middleware. You must spend some time to learn the migration process to upgrade your existing applications to ASP.NET Core in a faster and more efficient way.
Tools to Analyze Application Portability
As mentioned earlier ASP.NET Core is completely different from ASP.NET. It does not support several language features and APIs provided by ASP.NET. Hence, you must assess the portability of the existing application using .NET Portability Analyzer. You have option to choose from three distinct editions of .NET Portability Analyzer – Console Application, Visual Studio Extension and .NET Core Application. As a command-line interface (CLI) based tool, the Console Application enables you to assess application portability on Windows using command shells.
At the same time, Visual Studio Extension enables you to evaluate application portability using the robust IDE. But .NET Core Application, unlike other editions, supports three major platforms. It further targets .NET Core instead of .NET Framework. .NET Core Application determines the portability of the application to a specific platform by analyzing the assemblies stored in various folders. It further determines application portability by sending the required information to a web service – .NET Portability Service. You must determine the portability of your existing application to a particular platform before starting the migration process.
However, you must remember that Microsoft has been updating ASP.NET Core to meet the emerging trends in web development. The company recently released beta preview versions of ASP.NET Core 2.0. ASP.NET Core 2.0 will come with new project templates, server constraint configuration options, and option to set the maximum number of HTTP/HTTPS requests for the application. Hence, you must keep in mind the features provided by both current and upcoming versions of ASP.NET Core while migrating the existing applications.
While trying to optimize my old asp.net application, I found that lot of java script files and css files are affecting the performance of my web applications.To optimize the performance of an application I found that bundling and minification can significantly improve the performance. It can be applied on MVC as well as in ASP.NET web forms. So I decided to take a hand on this. Before applying bundling and minification, it is good to understand the basic logic behind this.
A world of web, where an organization provide its services like health care, banking, financial etc over the internet to end users.
To grow up business, organizations want to provide their services to more and more end users in simple ways.
So organizations use web app, mobile app, ipad app etc so that one can use their services easily and quickly.
This is where web services comes into picture. Communicating amongst all these entities (web app, mobile app, ipad app etc) without affecting their existence is made possible by web services.
For Asp.net Web API, I am going to write a series of technical articles. Few of them will cover conceptual point, few will cover demos and in few of them, I will try to dig deep into it by covering important technical point like routing, hosting, security stuff.
So in this series of articles, Lets start with light node, what is ASP.NET Web API and why we should go for it.
Web is evolving very rapidly and so we have to. And demands of generic things are increasing as well.
We all know now days no application stands alone, because there are a lot of types of devices available
So we have to create services which can be called by any kind of device and business logic can be placed at a single place.
And when it comes to fetch data from a web service method, client devices don’t always need whole data, sometimes needs few columns or sometime needs data filtered on some basis and so on.
I am pretty sure like me, many of you will be thinking same looking at those fancy popups which open on currently running rich UI websites. What if I can do same to incorporate such a window in my piece of work.
I crossed path with this awesome library called Lightwindow v2.0 when one of my colleague introduced me to it.
During my experience implementing it, I encountered some issues which really made me scratch my head hard. So let me take you along on my journey of dealing with this library and hopefully you can find answers to all your problems and doubts related to this library at the end of this journey.
In this blog I am going to introduce Barcode with SSRS reports. Before going ahead we need to know what is Barcode. A barcode is a machine readable code that is most common now adays. It is in the form of parallel lines. These parallel lines are generated with the help of number or alphabets or with combination of both (alphanumeric). These parallel lines are separated with some distance between them depending upon need. Barcodes are printed on a commodity and used especially for stock control. Example-: Read the rest of this entry
Before going to start about the code, I would like to tell you something about Telerik. Well, Telerik adds magic in our application. Its a third party tool that enhances the functionality of asp.net. If you have never used telerik and want to know more, I would suggest you to go through below links:-
In this article I am going to tell you, how to bind Telerik RAD grid using java script.
State Management: By name it means managing or preserving state of a control, web page or data.
Whenever we work on a page in asp.net have we ever thought how controls are able to get there state back after a post back. In real all the controls are stateless means when ever there is a postback state is lost. Then how are they able to get there state back after a postback???
This is all because of state management technique that asp.net provides for all the controls, web pages or data.
Now the question comes. How?
How are state management techniques used? Is it used on server side or client side? How many types of state management techniques are there?
In MVC, there is no click event like(Button_Click) for buttons, action is used to handle the post action of the buttons.
(There are various ways for handling multiple submit buttons on the same form but the best two are below)
Method 1: Handle all Submit Buttons post in one Action:
Example: Suppose we have to perform some mathematical operation like (Add, Substract, Multiply, Divide) with 2 numeric values.
For this case, we will create a form and add 2 TextBoxes and 4 submit buttons for each opeartion (Add, Substract, Multiply and Divide).