'a giren çok sayıda programcı yayını okudum Bağımlı işlemler için geçerli bir sipariş belirlenemedi. Varlık Çerçevesi'nde kendi kendini referanslama ilişkisi kullanırken, yabancı anahtar kısıtlamaları, model gereksinimleri veya mağaza tarafından üretilen değerler'dan kaynaklanan bağımlılıklar olabilir.Varlık Çerçevesi'nde özdeğerlendirme/alt-çocuk ilişkisi
Ben çalışmak için bir ebeveyn-çocuk ilişkisinin almaya çalışıyorum: Bu kullandığım yapılandırma (Akıcı API)
public class Category {
public int CategoryId { get; set; }
public string Name { get; set; }
public int ParentId { get; set; }
public Category Parent { get; set; }
public List<Category> Children { get; set; }
}
:
Property(c => c.ParentId).IsOptional();
HasMany(c => c.Children).WithOptional(c => c.Parent).HasForeignKey(c => c.ParentId);
//HasOptional(c => c.Parent).WithMany(c => c.Children).HasForeignKey(c => c.ParentId);
İkisi hasMany() ve HasOptional () yapılandırmaları, "Bu gibi yeni bir kategoriyi kaydetmeyi denediğimde" bağımlı işlemler için geçerli bir sipariş belirlenemiyor ... "istisnasıyla sonuçlanır:
context.Categories.Add(new Category { Name = "test" });
EF neden Kategoriyi null parentıd ile eklemediğini anlamıyorum. Veritabanı, ParentId yabancı anahtarının boş olmasına izin verir.
Bunu nasıl yapacağımı söyleyebilir misiniz?
Teşekkürler! İşe yaradı. Her ikinize de – Julius
+1, günümü yaptınız. Thax çok. –
Bu ebeveyn-çocuk ilişkisini niteliklerle (akıcı) uygulamaya koymanın bir yolu var mı? – Shimmy