none
Probleme mit dem Entity Framework core 2 bei Referenzen 1:N RRS feed

  • Frage

  • Hallo NG,

    Ich habe eine Tabelle Country:

    public class Country
    {
        public Country()
        {
            Clients = new List<Client>();
        }
        [Key]
        [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
        public long CountryID { get; set; }
        [StringLength(3)]
        [Required]
        public string CountryFlag { get; set; }
        [StringLength(100)]
        [Required]
        public string CountryName { get; set; }
        [StringLength(7)]
        [Required]
        public string CountryCode { get; set; }
    
        public ICollection<Client> Clients { get; set; }
    }

    und eine Tabelle Client:

    public class Client
    {
        public Client()
        { 
        }
        [Key]
        [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
        public long ClientID { get; set; }
        [Required]
        public long CountryID { get; set; }
        public Country Country { get; set; }
    }

    Wenn ich im Context in der Methode OnModelCreating mit der Fluent-API  die Referenz wie folgt erstelle.

    builder.Entity<Country>().HasMany(r => r.Clients).WithOne().HasForeignKey(r => r.CountryID).IsRequired().OnDelete(DeleteBehavior.Restrict);

    Finde ich in meiner Tabelle eine weitere Spalte mit dem Namen CountryID1. Wenn ich die Tabelle analysiere mit:

    select * from INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE

    sehe ich das nun mit CountryID und CountryID1 eine Referenz gebildet wird. Wie kann ich das umgehen.

    Danke im voraus für jeden Hinweis und Tipp

    Grüße Ingo

    Montag, 27. November 2017 13:36