Mam dwa modele do EF Core, które mają zostać zmigrowane do postgresa. Pierwszy model Client z PK typu Guid oraz drugi model Message który ma mieć FK do tabeli Client.
No więc w modelu Message to FK (ClientId) dałem klasy Client i wszystko spoko bo się klucz obcy założył. Ale teraz pojawił się problem przy zapisie do bazy ( ͡°͜ʖ͡°). Jak mam ustawić wartość ClientId ? Jako wartość mam int, dostaję go od klienta przez Web API.
Gdy zmieniam w modelu dla ClientId klasę z Client na Guid to widzę, że EF Core chce klucz obcy usuwać.
Mam dwa modele do EF Core, które mają zostać zmigrowane do postgresa.
Pierwszy model Client z PK typu Guid oraz drugi model Message który ma mieć FK do tabeli Client.
No więc w modelu Message to FK (ClientId) dałem klasy Client i wszystko spoko bo się klucz obcy założył.
Ale teraz pojawił się problem przy zapisie do bazy ( ͡° ͜ʖ ͡°). Jak mam ustawić wartość ClientId ? Jako wartość mam int, dostaję go od klienta przez Web API.
Gdy zmieniam w modelu dla ClientId klasę z Client na Guid to widzę, że EF Core chce klucz obcy usuwać.
Piszesz, że Client ma guid jako klucz podstawowy, a następnie, że dostajesz go w żądaniu http w formie int.
public void CreateTruckForCoworker(Guid coworkerId, Truck truck){
truck.CoworkerId = coworkerId;
Create(truck);
}
@grap32: Hmmm, widzę że ustawia się int przy deserializacji, dzięki za podpowiedź.