European ASP.NET MVC 4 and MVC 5 Hosting

BLOG about ASP.NET MVC 3, ASP.NET MVC 4, and ASP.NET MVC 5 Hosting and Its Technology - Dedicated to European Windows Hosting Customer

European ASP.NET MVC Hosting - Greece :: How to Remove IIS Header Bloat in ASP.NET MVC

clock June 26, 2014 09:30 by author Scott

Hi All, how do you do? In this post I will share little bit about how to remove IIS Header Bloat on IIS. This is default ASP.NET project’s response to a request for a page:

Cache-Control:private

Content-Encoding:gzip

Content-Length:3256

Content-Type:text/html; charset=utf-8

Date:Thu, 26 Jun 2014 09:07:59 GMT

Server:Microsoft-IIS/8.0

Vary:Accept-Encoding

X-AspNet-Version:4.0.30319

X-AspNetMvc-Version:4.0

X-Powered-By:ASP.NET

The first thing you need to do is remove X-AspNetMvc-Version header. How? Please just open your Global.asax.cs file to Application_Start, and add this code at the top

MvcHandler.DisableMvcResponseHeader = true;

Then, you can also eliminate the “Server” header by adding a handler to PreSendRequestHeaders event like this:

        protected void Application_PreSendRequestHeaders(object sender, EventArgs e)
        {
            HttpApplication app = sender as HttpApplication;
            if (app != null &&
                app.Context != null)
            {
                app.Context.Response.Headers.Remove("Server");
            }
        }

Then, remove the “X-AspNet-Version" header by adding a config key to Web.Config. Here is the key to add (under <system.web>):

    <httpRuntime enableVersionHeader="false" />

The last is remove the X-Powered-By by adding another confing key to Web.Config (under<system.webserver>):

    <httpProtocol>

      <customHeaders>

        <remove name="X-Powered-By" />

      </customHeaders>

    </httpProtocol>

After doing all of this, we end up with a nice and clean response:

Cache-Control:private

Content-Encoding:gzip

Content-Length:3256

Content-Type:text/html; charset=utf-8
Date:Wed, 26 Jun 2014 09:17:09 GMTServer:Microsoft-IIS/8.0

Vary:Accept-Encoding



ASP.NET MVC 6 Hosting Europe - HostForLIFE.eu :: ASP.NET MVC 6 Overview

clock June 16, 2014 13:28 by author Peter

Good News! Microsoft has been released ASP.NET MVC 6 on 12 May 2014 at TechEd North America, as part of ASP.NET vNext, the MVC, Web API, and Web Pages frameworks will be merged into one framework. Microsoft feels that System.Web needs to be removed because it is actually quite expensive. A typical HttpContext object graph can consume 30.000 of memory per request. When working with small JSON-style requests this represents a disproportionately high cost. With ASP.NET MVC 6 new design, the pre-request overhead drops to roughly 2000.

The new ASP.NET MVC 6 assumes you are familiar with either MVC 5 or Web API 2. If not, here is some terminology that is used in ASP.NET MVC. The new framework removes a lot of overlap between the existing MVC and Web API frameworks. It uses a common set of abstractions for routing, action selection, filters, model binding, and so on. You can use the framework to create both UI (HTML) and web APIs.

Features of ASP.NET vNext & ASP.NET MVC 6

  • A controller handles HTTP requests and executes application logic.
  • Actions are methods on a controller that get invoked to handle HTTP requests. The return value from an action is used to construct the HTTP response.
  • Razor syntax is a simple programming syntax for embedding server-based code in a web page.
  • Routing is the mechanism that selects which action to invoke for a particular HTTP request, usually based on the URL path and the HTTP verb.
  • A view is a component that renders HTML. Controllers can use views when the HTTP response contains HTML.
  • ASP.NET vNext includes new cloud-optimized versions of MVC, Web API, Web Pages, SignalR, and Entity Framework.
  • The welcome page is not too interesting, so lets’s enable the app to serve static files.
  • Mono is a Supported Platform. In the past the support story for Mono was essentially “we hope it runs, but if it doesn’t then you need to talk to Xamarin”. Now Microsoft is billing Mono as the official cross-platform CLR for ASP.NET vNext.
  • ASP.NET vNext support true side-by-side deployment. If your application is using cloud-optimized subset of ASP.NET vNext, you can deploy all of your dependencies including the .NET vNext (cloud optimized) by uploading bin to hosting environment.
  • Cross Platform Development. Not only is Microsoft planning for cross-platform deployment, they are also enabling cross-platform development.



ASP.NET MVC 6 Hosting South Africa - HostForLIFE.eu :: How to Create a RSS feed with the new ASP.NET MVC 6

clock June 13, 2014 11:10 by author Peter

Today, we are going to discuss about create RSS feed on ASP.NET MVC 6 Hosting. The RSS classes that we will be describing are available in all types of ASP.NET applications, not only the web-based onces. But we think displaying a blog item on your website is great and relatively simple example of consuming RSS feeds in ASP.NET.

There actually is built-in RSS support in ASP.NET. We have not been aware of that support for some time and occasionally used the third-party library RSS.NET. It turns out that we do not need a separate library any longer. Here is an example MVC controller that refers to the SyndicationFeed and SyndicationItem classes in its Index action method.

using System.Web.Mvc;
using System.ServiceModel.Syndication;
using System.Xml;
using System.Linq;namespace Antrix.Web.Controllers
{
    public class HomeController : Controller
    {
        public ActionResult Index()
        {
            ViewBag.Message = "Welcome to ASP.NET MVC!";
            const string feedUrl =
            "http://yourdomain.com/feeds/posts/default?alt=rss";
           SyndicationFeed feed = null;
           using (XmlReader reader = XmlReader.Create(feedUrl))
            {
                feed = SyndicationFeed.Load(reader);
            }
            if (feed != null)
            {
                SyndicationItem item = feed.Items.First<SyndicationItem>();

                ViewBag.RssItem = item;         
            }
           
             return View();
        }
        public ActionResult About()
        {
            return View();
       }
    }
}

The Index method will reads a feed of the site that you are reading right now. It puts the first item (which we assume represents the last post that has been published) in the ViewBag. Normally we use model classes to refer to data within my MVC views, but we want to keep things simple. We have added code to show the title and summary of the last post, and a link to the full post.

@{
    ViewBag.Title = "Home Page";
}
<h2>@ViewBag.Message</h2>
<p>

    To learn more about ASP.NET MVC visit <a href="http://asp.net/mvc" title="ASP.NET MVC Website">http://asp.net/mvc</a>.
</p>
<div>

From our blog:  
<div style="font-weight: bold; padding: 10px">@ViewBag.RssItem.Title.Text</div>
<div style="clear: both; padding: 10px">@Html.Raw(@ViewBag.RssItem.Summary.Text)</div>
<div style="clear: both; padding: 10px"><a href="@ViewBag.RssItem.Links[0].Uri" target="_blank">Show full post</a></div>
</div>

Using the SyndicationFeed and SyndicationItem classes it becomes rather easy to create your own web-based (or Windows-based, if you prefer) RSS reader.



HostForLIFE.eu Announces Release of ASP.NET MVC 5.2 Hosting only €1.29/ month

clock June 6, 2014 08:59 by author Peter

HostForLIFE.eu, an European Recommended Windows and ASP.NET Spotlight Hosting Partner in Europe, Today has announced the availability of newest hosting plans that are optimized for the latest update of the Microsoft ASP.NET MVC 5.2 technology. HostForLIFE.eu - an affordable , high uptime, excellent customer service, quality and also reliable hosting provider in advanced Windows and ASP NET technology. HostForLIFE.eu proudly announces the availability of the ASP.NET MVC 5.2 hosting in our entire servers environment.

ASP.NET MVC 5.2 hosting includes great new features for Web API OData v4 as summarized below but has bug fixes and minor features that bring in a lot more goodness to MVC, Web API, and Web Pages. Only paying €1.29/month, The customers can get professional and high skilled support ASP NET MVC 5 .2  with HostForLIFE.eu. Really, there are many benefits when you host your site with them. We can fully guarantee you that HostForLIFE.eu will provide the best quality hosting services.

In ASP.NET MVC 5.2, Customizing IDirectRouteProvider will be more easy by extending our default implementation, DefaultDirectRouteProvider. This class provides separate overridable virtual methods to change the logic for discovering attributes, creating route entries, and discovering route prefix and area prefix.

HostForLIFE.eu claims to be the fastest growing ASP.NET MVC Hosting and Windows Hosting service provider in Europe continet. The company has its servers situated in Amsterdam and it offers the latest servers working on Dual Xeon Processor, fastest connection line of 1000 Mbps, and minimum 8 GB RAM. All these new servers are laced with the most recent versions of Windows Server 2012, ASP.NET 4.5.2 , Silverlight 5, Visual Studio Lightswitch, SQL Server 2012 and the lates SQL Server 2014, the latest ASP.NET MVC 5.2 & Previous and support various WebMatrix Applications.

For additional information about ASP NET MVC 5.2 Hosting offered by HostForLIFE, please visit http://hostforlife.eu/European-ASPNET-MVC-52-Hosting

About HostForLife.eu:

HostForLIFE.eu was established to cater to an under served market in the hosting industry; web hosting for customers who want excellent service. This is why HostForLIFE continues to prosper throughout the web hosting industry’s maturation process.

HostForLife.eu is Microsoft No #1 Recommended Windows and ASP.NET Hosting in European Continent. Our service is ranked the highest top #1 spot in several European countries, such as: Germany, Italy, Netherlands, France, Belgium, United Kingdom, Sweden, Finland, Switzerland and many top European countries.



European ASP.NET MVC 5 Cloud Hosting - Austria :: Implementation ASP.NET MVC 5 Authentication Filters

clock June 5, 2014 09:01 by author Scott

ASP.NET MVC 5 offer many great new features. In today post, I will share one of the new ASP.NET MVC 5 feature which is called Authentication Filters and ASP.NET identity Management. ASP.NET MVC does not provide any built-in authentication filter(s). However it provides you with the framework, so you can easily create your own custom authentication filters.

 

In previous ASP.NET MVC 4, maybe you use AuthorizationFilters. New authentication filters run prior to authorization filters. It is also worth noting that these filters are the very first filters to run before any other filters get executed.

Why Use Authentication Filters?

Prior to authentication filters, developers used the Authorization filters to drive some of the authentication tasks for the current request. It was convenient because the Authorization filters were executed prior to any other action filters.  For example, before the request routes to action execution, we would use an Authorization filter to redirect an unauthenticated user to a login page. Another example would be to use the Authorization filter to set a new authentication principal, which is different from the application’s original principal in context.

Authentication related tasks can now be separated out to a new custom authentication filter and authorization related tasks can be performed using authorization filters. So it is basically about separating of concerns, while giving developers more flexibility to drive authentication using ASP.NET MVC infrastructure.

The Implementation ASP.NET MVC Authentication Filters

If you've done any development with ASP .NET MVC, you've more than likely used the Authorization attribute to enforce role-based security within your Web site. With MVC 5, you can now apply an Authentication filters to your controller to allow users to authenticate to your site from various third-party vendors or a custom authentication provider.

When applied to an entire controller class or a particular controller action, Authentication filters are applied prior to any Authorization filters. Let's see an Authentication filter in practice. Create a new C# ASP .NET Web Application, see Figure below.

Then, select ASP.NET project type.

Let's first look at how to implement a custom authentication filter that will simply redirect the user back to the login page if they're not authenticated. Create a new directory named CustomAttributes in your project. Next, create a new class named CustomAttribute that inherits from ActionFilterAttribute and IAuthenticationFilter:

public class BasicAuthAttribute: ActionFilterAttribute, IAuthenticationFilter

The IAuthenticationFilter interface defines two methods: OnAuthentication and OnAuthenhenticationChallenge. The OnAuthentication method is executed first and can be used to perform any needed authentication. The OnAuthenticationChallenge method is used to restrict access based upon the authenticated user's principal.

 For this simple example, I'll only be implementing the OnAuthenticationChallenge method and will leave the OnAuthenitcation method blank:

public void OnAuthenticationChallenge(AuthenticationChallengeContext filterContext)
{
    var user = filterContext.HttpContext.User;
    if (user == null || !user.Identity.IsAuthenticated)
    {
        filterContext.Result = new HttpUnauthorizedResult();
    }
}

Here's the complete BasicAuthAttribute implementation:

using System.Web.Mvc;
using System.Web.Mvc.Filters;

namespace VSMMvc5AuthFilterDemo.CustomAttributes
{
    public class BasicAuthAttribute : ActionFilterAttribute, IAuthenticationFilter
    {
        public void OnAuthentication(AuthenticationContext filterContext)
        {
        }

        public void OnAuthenticationChallenge(AuthenticationChallengeContext filterContext)
        {
            var user = filterContext.HttpContext.User;
            if (user == null || !user.Identity.IsAuthenticated)
            {
                filterContext.Result = new HttpUnauthorizedResult();
            }
        }
    }
}

You can now test out the BasicAuthAttribute by applying it to the HomeController class. Open up the HomeController class file, then add a using statement for your CustomAttributes namespace:

using VSMMvc5AuthFilterDemo.CustomAttributes;

Then apply the custom attribute to the HomeController class:

[BasicAuthAttribute]
public class HomeController : Controller

When you run the application, you should now be automatically redirected to the login page

In order to view the homepage, you must register a user account

Once your user is registered, you'll be automatically redirected to the homepage

As you can see, it isn't overly complex to implement a custom authentication filter within ASP.NET MVC 5.

Summary

The new IAuthenticationFilter provides a great ability to customize authentication within an ASP.NET MVC 5 application. This provides a clear separation between authentication and authorization filters. OnAuthentication and OnAuthenticationChallenge methods provide greater extensibility points to customize authentication within ASP.NET MVC framework. We also looked at a sample usage of CustomAuthentication attribute and how you can use to change the current principal and redirect un authenticated user to a login page.



HostForLIFE.eu Announces Release of Cheap Dedicated Windows Cloud Server Hosting Plans

clock June 3, 2014 09:13 by author Peter

European leading web hosting provider, HostForLIFE.eu announced cheap dedicated Windows cloud server due to high demand of Windows cloud server users in Europe.

Windows & ASP.NET hosting provider HostForLIFE.eu announced cheap dedicated Windows cloud server hosting plans. HostForLIFE.eu offers the ultimate performance and flexibility at an economical price for windows cloud server. HostForLIFE.eu cheap dedicated Windows cloud server hosting plans starts from just as low as €16.00/month only.

HostForLIFE.eu provisions all dedicated Windows Cloud Server in just few minutes (upon payment verification and completion). HostForLIFE.eu has a very strong commitment to introduce their Cheap dedicated Windows and ASP.NET Cloud Server hosting service to the worldwide market. HostForLIFE.eu starts to target market in Europe. HostForLIFE.eu will be the one-stop cheap dedicated Windows and ASP.NET Cloud Server Hosting Solution for every ASP.NET enthusiast and developer.

HostForLIFE’s cheap dedicated Windows Dedicated Cloud Server hosting plan comes with the following features: Windows 2008R2/2012, Data Center OS Version, 1 x vCPU, 1 GB RAM, You have full root access to the server 24/7/365, 40 GB Storage (SSD), 1000 GB Bandwidth, 1000 Mbps Connection, 1 Static IP and SAN Storage.

For additional information on this cheap Windows dedicated cloud server Hosting plan, please visit http://hostforlife.eu/European-Cheap-Windows-Cloud-Server-Plans

About HostForLIFE.eu:
HostForLIFE.eu is European Windows Hosting Provider which focuses on Windows Platform only. HostForLIFE.eu deliver on-demand hosting solutions including Shared hosting, Reseller Hosting, Cloud Hosting, Dedicated Servers, and IT as a Service for companies of all sizes.

HostForLIFE.eu is awarded Top No#1 SPOTLIGHT Recommended Hosting Partner by Microsoft (see www.microsoft.com/web/hosting/HostingProvider/Details/953). Their service is ranked the highest top #1 spot in several European countries, such as: Germany, Italy, Netherlands, France, Belgium, United Kingdom, Sweden, Finland, Switzerland and other European countries. Besides this award, they have also won several awards from reputable organizations in the hosting industry and the detail can be found on their official website.



About HostForLIFE.eu

HostForLIFE.eu is European Windows Hosting Provider which focuses on Windows Platform only. We deliver on-demand hosting solutions including Shared hosting, Reseller Hosting, Cloud Hosting, Dedicated Servers, and IT as a Service for companies of all sizes.

We have offered the latest Windows 2016 Hosting, ASP.NET Core 2.2.1 Hosting, ASP.NET MVC 6 Hosting and SQL 2017 Hosting.


Tag cloud

Sign in