First, I think it might be easier if you would use an ORM like Entity Framework, instead of ADO.NET.
For the frontend I would recommend Grid.MVC. Here's an simple example to get you started http://www.codeproject.com/Tips/597253/Using-the-Grid-MVC-in-ASP-NET-MVC
For the frontend you could use an if in the cshtml file such as:
@{
if(Model.Property != null) //Receives 4 columns, 1 Property is initialized with NULL
{
//Render grid with 4 columns
}
else // Receives 5 columns, all properties !=null
{
//Render grid with 5 columns
}
}
If you feel more comfortable with javascript, you can use jqgrid.