@Zeronader: Jak masz klasę Plan to w środku powinno być Id a nie PlanId - niepotrzebnie duplikujesz i te informacje. Wątpię, żeby to pomoglo w Twoim przypadku, ale moze na przyszłość sie przyda :p
@Zeronader: Atrybutu :P. W javie są anotacje, w c# atrybuty :). Z linka od kolegi wyżej:
Code First infers that a property is a primary key if a property on a class is named “ID” (not case sensitive), or the class name followed by "ID". If the type of the primary key property is numeric or GUID it will be configured as an identity column.
@Yahoo_: No mnoga nie wiem czemu. A co do dwóch planów, to jeden to plan z którego ten item pochodzi, a drugi to w przypadku gdy dany item jest planem. A chce osiągnąć to ,żeby się kompilował kod ;p
Jak usunę sublist to działa, ale teraz pytanie jak to zrobić, żeby to działało?
@Zeronader: To zrób pustą klasę :P. Nie działa pewnie dlatego, że PlanId raz jest longiem, a raz intem. Wywal PlanItems = new HashSet(); To bez sensu, przecież chcesz, żeby EF Ci wypełnił to property. Argumenty konstruktora nie powinny mieć prefixu _. To standard dla prywatnych pól :).
@Zeronader: pokombinuj z InverseProperty ef nie wie czy PlanItems ma być powiązane z Plans czy SubList. Zamiast PlanItemId daj zwyczajnie Id, ef rozpozna że to klucz główny, i zmień Plans na liczbę poj.
Chce zrobić apke z EF z code-first.
Zaprojektowałem taką baze danych, ale w trakcie migracji wywala taki błąd.
Jaki tutaj robię błąd?
źródło: comment_S59KdLhKktDu0EyEQPHV35IdiOyrMhTS.jpg
PobierzTutaj błąd się czepia mojego łączenia, ale nie wiem czemu ( ͡° ʖ̯ ͡°)
https://msdn.microsoft.com/en-us/data/jj679962.aspx
Może tutaj coś znajdziesz
Z linka od kolegi wyżej:
Poza tym nie powinieneś dostosowywać
A co do dwóch planów, to jeden to plan z którego ten item pochodzi, a drugi to w przypadku gdy dany item jest planem.
A chce osiągnąć to ,żeby się kompilował kod ;p
Jak usunę sublist to działa, ale teraz pytanie jak to zrobić, żeby to działało?
@Zeronader: To zrób pustą klasę :P.
Nie działa pewnie dlatego, że PlanId raz jest longiem, a raz intem.
Wywal PlanItems = new HashSet(); To bez sensu, przecież chcesz, żeby EF Ci wypełnił to property.
Argumenty konstruktora nie powinny mieć prefixu _. To standard dla prywatnych pól :).
Chce ,żeby item mógł być także listą która ma kolejne itemy.