Massoud Mazar

Sharing The Knowledge

Quick and easy Custom 404 page for ASP.net MVC 5

While ASP.net MVC makes it easy and clean to create a professional looking website, it seems to be a little harder to incorporate custome error pages (e.g. 404 page) which are part of general look and feel of your site. There are many good write-ups on how to do this (for example http://benfoster.io/blog/aspnet-mvc-custom-error-pages), but I was looking for an easy way to point to one of my views as the 404 page.

What I ended up doing was to create a controller for my error views and use the httpErrors section of web.config to point to it: More...

Adding and removing Self Signed Certificates in IIS

It took me a little bit to get a handle of creating and using Self Signed Certificates for IIS on a Windows Server 2012. Problem was not so much about running a couple of commands to create the certificate, but more related to where things are and what to do when things go wrong.

This page provides 2 commands to create a self signed certificate to be used by IIS. I had to make the key length equal to 2048 so Chrome browser does not complain about the keys:  More...

Simulate asp.net authentication for Roku player

Few weeks ago I decided to add a channel to my Roku box to play live videos from a Free-To-Air Satellite TV channel. This specific channel has a live video stream from their website which requires authentication. My challenge was to build a Roku app using provided SDK to simulate the authentication process of the asp.net website so I can grab the URL of the live stream. (URL has a token attached to it which requires authentication).

To accomplish this More...

Trick Google Chrome to save password

Today I was trying to get Google chrome to save my username and password for a web site but it would not offer me to save it. This web site uses the browser popup for login credentials (which is caused by the server sending back HTTP 401: Unauthorized). Chrome would show the popup and I could login after entering credentials, but would not offer to save it. My settings related to saving passwords was correct and this site was not in the "Do not save" list. I tried many solutions, like deleting files from App Data folder or even uninstalling and re-installing chrome. Until I found an interesting behaviour by accident. More...

C# code to play PCAP capture of HTTP request

If you have been involved in troubleshooting web applications providing APIs to clients, you know how easier it is to have the actual request sent from client and be able to replay that against your server code to find the problem. Tools we use in my team is WireShark and NCAT. When QA team finds a problem, we always ask for the WireShark capture of the communication. More...

SQL server vs AppFabric Cache: Performance and Memory consumption

There are many great articles on the internet comparing MS SQL server and AppFabric, and all of them show how AppFabric has better performance over SQL server. It is completely understandable that with complex queries, AppFabric would out perform SQL server. But in an environment where you have a huge number of very small objects to be cached and looked up, AppFabric shows very weak results. More...

Passing parameters to a custom Web Deployment Provider

Recently I spent numerous hours trying to find out how I can pass more parameters than just a path to my custom Deployment provider. It is amazin how simple it is when you finally find the solution. In my case, I needed to send a key-value pair from my C# code to the provider, so it can find the key in a config file and change the value for me. Here is the code for the calling program:More...

Using Web Farm Framework to get list of Servers

Information about Web Farm Framework API is hard to find, so I think this may help some others like me who are interested in using WFF and web deploy APIs.

In this case, I wanted to get a list of all servers in a particular Web Farm and then push a file to all of them.

First step is to add references to these libreries in your project:

Microsoft.Web.Deployment

Microsoft.web.Farm 

The DLLs for these libraries are located in respective folders under C:\Program Files\IIS

I used the following helper methods to do what I needed.More...

Using SQL Server 2008 Reporting Services (SSRS) with MySQL

SQL Server Reporting services provides a decent reporting framework, and in 2008 release of SQL server, it is even better than previous versions. SSRS allows you to use many different types of data sources in your reports, but when I decided to add some reports with MySql sources, it was lacking data source type for it. With some research on the net, I realized it should be possible to add MySql data sources to both Visual Studio report designer and to the reporting services itself. More...