Chciałbym wiedzieć, jakie zasady Entity Framework stosuje w odniesieniu do nazewnictwa/generowania właściwości nawigacji. Zaobserwowałem kilka scenariuszy, które wydają się nie mieć sensu, więc zastanawiałem się, czy ktoś wie dokładnie, jak one działają.Entity Framework Navigation Reguły generowania właściwości
Scenariusz 1:
public class Post
{
public int Id { get; set; }
public User Author { get; set; }
}
Generuje
tj. domyślnie właściwości nawigacyjnych generować FKS nazwie [PropertyName] _id
Scenariusz 2:
To ma sens, że jeśli EF generuje takie właściwości, o formacie [PropertyName] _id gdy ręcznie określić FK Id będzie podążać te same zasady, jednakże:
public class Post
{
public int Id { get; set; }
public int? Author_Id { get; set; }
public User Author { get; set; }
}
Generuje
Jak widać, nie rejestruje się automatycznie jako właściwość nav.
Scenariusz 3:
Jeśli to nie działa na scenariuszu 2, dlaczego to działa na alternatywnej konwencji nazewnictwa?
public class Post
{
public int Id { get; set; }
public int? AuthorId { get; set; }
public User Author { get; set; }
}
Generuje
Jakie są zasady wokół nawigacji wykrywania i generowania nieruchomości?
Pomyślałem, że mogę połączyć z powrotem do dobrej [blogu] (http : //blog.staticvoid.co.nz/2012/7/17/entity_framework-navigation_property_basics_with_code_first) o właściwościach nawigacji. – orad
@orad lol cool, tak naprawdę zadałem to pytanie w ramach badań dla tego posta :) –