Kullanıcıların birbirlerini izlemelerine izin veren özelliği uygularım. Ben veritabanı tablolar vardır:Varlık çerçeve sınıfı sayısında iki aynı sınıf türü
public class Follow
{
[Key, Column(Order = 1)]
public Guid FollowerUserId { get; set; }
[Key, Column(Order = 2)]
public Guid FollowUserId { get; set; }
public DateTime CreatedOnDate { get; set; }
public virtual User Follower { get; set; }
public virtual User Following { get; set; }
}
son iki sanal özellikler danışmanın sorunu:
User{UserId, FirstName, LastName etc.}
Followings{FollowerUserId, FollowingUserId, CreatedOnDate etc.}
Yani EF sınıfı ekledi. Ben aradığında:
var model = con.Follows.Where(x => x.FollowerUserId == uid);
ben istisna aşağıdaki olsun:
Invalid column name 'Following_UserId'.
konu
muhtemelen bir sınıfta nedeniyle iki Kullanıcı nesneleri neden olmaktadır. Bunu nasıl çözeceğimize dair bir fikrin var mı?GÜNCELLEME
public class User
{
public Guid UserId { get; set; }
...
public virtual ICollection<Follow> Following { get; set; }
public virtual ICollection<Follow> Followers { get; set; }
}
doğru görünmüyor: navigasyon özellikleri birbirine ait EF anlatmak için
[InverseProperty]
öznitelik eklemek gerekir userID ve navigation özelliği, bunlardan sadece birini koymanız gerekir, aksi takdirde EF aralarındaki bağlantıyı kuramaz – CluelessDaha iyi açıklayabilir miyim Bunu nasıl düzeltebileceğimi bilmiyorum? – 1110