AspNet EF referenciando chave estrangeira ao campo
Estou tendo dois modelos:
public class Customer
{
public int Id { get; set; }
public int Number { get; set; }
public int ParentNumber { get; set; }
public string Name { get; set; }
public string Address { get; set; }
public string City { get; set; }
public string Country { get; set; }
public string Language { get; set; }
}
e
public class Batch
{
public int Id { get; set; }
public int Number { get; set; }
public string FileName { get; set; }
public string ArticleNumber { get; set; }
public string ArticleDescription { get; set; }
public int Weight { get; set; }
public DateTime ProductionDate { get; set; }
public DateTime DeliveryDate { get; set; }
public DateTime BestBeforeDate { get; set; }
public DateTime? ApprovedDateTime { get; set; }
public int CustomerId { get; set; }
public virtual Customer Customer { get; set; }
}
Um lote pode ter um cliente anexado a ele. Mas, como estamos importando os dados de outro sistema, decidimos não assumir o controle deles.id's
. No momento, a chave estrangeira diz: tente encontrar um cliente pela propriedadeCustomer.Id
Estou tentando conseguir o ponto chave estrangeiro paraCustomer.Number
deBatch.Customer(Id)
Como eu teria sucesso nisso? Eu tentei definir o Customer.Number para ser uma chave com o atributo Key .. mas isso fez a chave primária passar de Id para Number, que não é o que eu queria ...