Using Custom Action Filters in Class Libraries

21 Aug 2013 .Net, C#, Filters, MVC 2 Comments

I have recently been creating a class library that many MVC web applications are going to reference, and I wanted those applications to be able to implement some custom Action Filters so they did not need to duplicate code. I had originally thought this was not possible, due to the

Continue reading →

Passing in variables to custom Action Filters

20 Aug 2013 .Net, C#, Filters, MVC No Comments

Sometimes it is useful to have a reusable custom action filter, for example for checking user authorisation to access part of the application. I would prefer not to have a separate filter for each type of user, e.g. MustBeAdminAttribute, MustBeManagerAttribute, etc. There are several ways to pass variables to a

Continue reading →

Storing a byte array in a Cookie (nom!) C# MVC

15 Aug 2013 .Net, C#, MVC No Comments

It seems that cookies can eat store just about any kind of data, but keeping to a limit of 20 cookies per domain and 4096 bytes per cookie is the safe way to do it (source). I needed to store a byte

Continue reading →

Retrieving parameters from the query string in the URL in .Net

23 Jul 2013 .Net, C#, Filters, MVC No Comments

Here is a nice easy way to get the individual parameter values from the URL, returning either a NameValueCollection (System.Collections.Specialized.NameValueCollection HttpRequestBase.QueryString) of all parameters in the query string, or a string value of a particular named parameter.

var parameters = HttpContext.Request.QueryString;
var parameters = HttpContext.Current.Request.QueryString;
public class MyAttribute : ActionFilterAttribute
{
    public override void OnActionExecuting(ActionExecutingContext filterContext)
    {
        var

Continue reading →

App Offline page that refreshes when the site is back online

08 Jul 2013 JQuery, Server 2008 No Comments

I created an app_offline.htm page to place in my site's folder while I was deploying a new version, but I didn't want to put a 'click this link to refresh' or a suggestion to refresh the page. That seemed to be pushing my problem onto the user.

I decided that jQuery

Continue reading →

Getting IE7 and below to use @media print{} css

28 Jun 2013 CSS, Internet Explorer, JQuery No Comments

My print css is defined in my main css file in @media print{...}. IE7 and below don't seem to understand this. Putting the css into another css file and using the conditional tags to add it to the head means that IE can apply the css, but how do I know

Continue reading →

Config Transform Files for changing Web.config for release (ASP.Net 4.0)

26 Jun 2013 .Net, Visual Studio No Comments

You can change parts of the web.config between different builds (e.g. debug and release). I used it to change whether cookies must only be sent and received over ssl. It is also useful for changing connection strings from debug to live versions and also user defined keys (examples below). Clicking the arrow

Continue reading →

Fixed: Error when deploying a .Net 4.0 project (that was downgraded from .Net 4.5) to a .Net 4.0 server

25 Jun 2013 .Net, Server 2008, Visual Studio No Comments

I recently had to downgrade a .Net 4.5 project to .Net 4.0 so that it could run on MS Server 2003. I had many warnings and errors which I managed to clear up, as detailed in my previous post Downgrading an

Continue reading →

Downgrading an MVC4 project from .Net 4.5 to .Net 4.0

25 Jun 2013 .Net, Visual Studio No Comments

I recently created a new project in Visual Studio 2012 and didn't really think much about the .Net version (mistake!). It turns out that the server it is destined for is still MS Server 2003, which will not run .Net 4.5. Oh dear. So I Googled downgrading, and the process of

Continue reading →