I've changed it a little bit, looks like SelectList
has some issues to set the default selected item.
Look at this:
@{
List<SelectListItem> list = (List<SelectListItem>)ViewData["Sites"];
list.Where(x => x.Value == "1").Single().Selected = true;
}
@Html.DropDownList("SiteID", list.OrderBy(x => x.Selected).ThenBy(x => x.Text))
And the controller:
List<SelectListItem> items = new List<SelectListItem>();
items.Add(new SelectListItem { Text = "Action", Value = "0" });
items.Add(new SelectListItem { Text = "Drama", Value = "1" });
items.Add(new SelectListItem { Text = "Comedy", Value = "2" });
items.Add(new SelectListItem { Text = "Science Fiction", Value = "3" });
ViewData["Sites"] = items;