For anyone curious, I had a similar issue and the problem was in my Action. I was using return View(model), so the server was looking for an "Action" view which really does not exist. The simple fix is to specifiy the view in the return: return View("Edit", model).
Thanks for this solution. It has helped make a very nice Edit/Preview feature work efficently and cleanly.