سؤال

هل طريقة استخدام رمز إطار الكيان فقط لوجود كيان يحتوي على حقول من جدولين إذا كان كلا الجدولين لا يحتويان على المفتاح الأساسي؟

هنا مثال.

public class BlogPost
{
    public int PostID { get; set; }
    public String PostBody { get; set; }
    public int UserID { get; set; }
    public string Username { get; set; }
}

public class User
{
    public int UserID { get; set; }
    public String Username { get; set; }
}

public class BlogPostConfiguration : EntityConfiguration<BlogPost>
{
    public BlogPostConfiguration()
    {
        HasKey(b => b.PostID);
    }
}

public class UserConfiguration : EntityConfiguration<User>
{
    public UserConfiguration()
    {
        HasKey(b => b.UserID);
    }
}

أريد تعيين خاصية اسم المستخدم لكائن Blogpost إلى عمود اسم المستخدم لجدول المستخدم. يمكنني القيام بالرسم البياني باستخدام مفتاح خارجي باستخدام المصمم ، لكنني لست متأكدًا من كيفية القيام بذلك باستخدام الكود فقط. حاولت استخدام بيانين maphierarchy في كائن التكوين الخاص بي ، لكن يبدو أنه يعمل فقط إذا كان كلا الجدولين نفس المفتاح الأساسي.

هل كانت مفيدة؟

المحلول

لا أعتقد أن هذا ممكن مع وضع الوضع الحالي لإطار الكيان.

من أجل القيام بتقسيم الكيان ، يجب أن يكون لديك رسم خرائط من 1 إلى 1 (يجب أن يكون المفتاح الأساسي في كلا الجدولين).

كنت غير صحيح مع سعيتي في افتراض أنه لأنه يمكنك إضافة أعمدة من جدول ثانٍ في المصمم بأن الرمز سيعمل بالفعل. أحصل على خطأ مشابه جدًا عند محاولة القيام بالرسم البياني في EDMX كما أفعل عند استخدام الكود فقط.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top