I am using code first approach in a ASP.NET MVC 3 application and all integer primary keys in models (public int Id { get; set; }) are by default configured as
public int Id { get; set; }
Removing the Required attribute from a foreign key table did it for me.