I don't know what exactly was wrong but i just did these steps and it got resolved. (I hope you will be able to resolve this as i was able to do it)
Steps are as follows:
(1) Add the new controller using scaffolding on the basis of your edmx table and the DB context of EF file.
(2) Now where the save changes creates the problem is edit method.
(3) Now copy the edit method/ whole controller made out of scaffolding and paste it in your original controller.
(4) now just build the program and Voila you are good to go.
Update
I found out that for data to be edited from view all the fields must be sent for written again to controller. If at the time of edition any of the fields from entity table is missing it will not allow to be editted. Especially if PK is in Label and sent to controller for edit then it will generate this error.