Entity framework Invalid Column name, EF adds number 1 to primary key

entity-framework, entity-framework-4, entity-framework-5

Solution

Try add a many-to-one mapping as well. Please use pure Fluent API, and you should remove the [ForeignKey] annotations.

modelBuilder.Entity<Publicacion>()
            .HasRequired(x => x.Suscriptores)
            .WithMany(x => x.Publicacion);

Problem

I have these two entities: ``` public partial class Suscriptores { public Suscriptores() { this.Publicacion = new HashSet<Publicacion>(); } [Key] public int IdSuscriptor { get; set; } public string LogoSuscriptor { get; set; } public string Identificacion { get; set; } public string Nombre { get; set; } public string Direccion { get; set; } public string Telefono { get; set; } public string Email { get; set; } public string Fax { get; set; } public string Home { get; set; } public virtual ICollection<Publicacion> Publicacion { get; set; } } public partial class Publicacion { public Publicacion() { this.Edictos = new HashSet<Edictos>(); } [Key] public decimal IdPublicacion { get; set; } public System.DateTime FechaPublicacion { get; set; } public string IdUsuario { get; set; } public System.DateTime FechaPublicacionHasta { get; set; } public System.DateTime FechaArchivoHasta { get; set; } public int IdSuscriptor { get; set; } public decimal IdTipoPublicacion { get; set; } [ForeignKey("IdSuscriptor")] public virtual Suscriptores Suscriptores { get; set; } } ``` When I try to run this query: ``` public ActionResult DetailsVSTO(string Identificacion) { var SusQ = from s in db.Suscriptores where s.Identificacion == Identificacion select s; return Json(SusQ.First(), JsonRequestBehavior.AllowGet); } ``` It throw this message: System.Data.SqlClient.SqlException: Invalid column name 'Suscriptores_IdSuscriptor1' Trying to solve this problem, I added this fluent API code at DBContext: ``` modelBuilder.Entity<Suscriptores>() .HasMany(x => x.Publicacion) .WithRequired(x => x.Suscriptores) .Map(a => a.MapKey("IdSuscriptor")); ``` But the problem persists. How can I solve this?

Original source