نمایش نتایج 1 تا 6 از 6

نام تاپیک: نحوه config رابطه ی 1-1 در کد فرست

  1. #1

    نحوه config رابطه ی 1-1 در کد فرست

    سلام
    من می خوام با codefirst یه رابطه ی 1-1 رو ایجاد کنم و به وسیله ی Fluent API رابطه رو config کنم ولی به من اجازه ی گرفتن کلید فیلدی به عنوان کلید خارجی رو نمیده.

    به نظر شما با این روش(Fluent API) راهی هست بتونم؟

  2. #2
    کاربر دائمی آواتار ali_md110
    تاریخ عضویت
    فروردین 1385
    محل زندگی
    شیراز
    پست
    1,181

    نقل قول: نحوه config رابطه ی 1-1 در کد فرست

    برای رابطه یک به یک فقط کافی هست تا درون هرکلاس یک Navigation Property (به رنگ آبی مشخصه) از کلاس دیگر پیاده کنید مثال کلاس دانش اموز و کلاس آدرس
    در رابطه یک به یک مهم اونه که باید طرف Principal یعنی اون کلاسی که باید اول اطلاعات درونش ذخیره بشه رو مشخص کرد



    public class Student
    {
    public Student() { }

    public int StudentId { get; set; }
    public string StudentName { get; set; }

    public virtual StudentAddress StudentAddress { get; set; }

    }

    public class StudentAddress
    {
    [Key, ForeignKey("Student")]
    public int StudentId { get; set; }

    public string Address1 { get; set; }
    public string Address2 { get; set; }
    public string City { get; set; }
    public int Zipcode { get; set; }
    public string State { get; set; }
    public string Country { get; set; }

    public virtual Student Student { get; set; }

    }


  3. #3

    نقل قول: نحوه config رابطه ی 1-1 در کد فرست

    ممنون اینو میدونستم من میخواستم اولا با fluentapi باشه بعدم کلیدخارجیم میخواستم تعریف کنم

  4. #4
    کاربر دائمی آواتار ali_md110
    تاریخ عضویت
    فروردین 1385
    محل زندگی
    شیراز
    پست
    1,181

    نقل قول: نحوه config رابطه ی 1-1 در کد فرست


    public class StudentConfig : EntityTypeConfiguration<Student>
    {
    public StudentConfig()
    {
    // one-to-one
    this.HasOptional(x => x.StudentAddress )
    .WithRequired(x => x.Student)
    .WillCascadeOnDelete();
    }
    }


    Principal : طرفی که ابتدا در بانک اطلاعاتی ذخیره خواهد شد.
    Dependent : طرفی که پس از ثبت Principal در بانک اطلاعاتی ذخیره می‌شود.
    Principal می‌تواند بدون نیاز به Dependent وجود داشته باشد.
    وجود Dependent بدون Principal ممکن نیست زیرا ارتباط بین این دو توسط یک کلید خارجی تعریف می‌شود.
    میتوانید هر کدام دلخواهتان هست از موجودیتها را به عنوان رابطه Principal یا Dependent انتخاب کرد

  5. #5

    نقل قول: نحوه config رابطه ی 1-1 در کد فرست

    من مشکلم این بود که می خواستم مثل رابطه های یک به چند یه فیلد جدا به عنوان کلید خارجی بگیرم . در صورتی که تو رابطه ی یک به یک کلید اصلی principal کلید اصلی dependent هم میشه .فقط باید بعد از تنظیم رابطه دقیقا یه فیلد مثله کلید principal توی dependent به عنوان کلید تعریف کنیم. اونوقت همه چی حل میشه

  6. #6
    کاربر دائمی آواتار ali_md110
    تاریخ عضویت
    فروردین 1385
    محل زندگی
    شیراز
    پست
    1,181

    نقل قول: نحوه config رابطه ی 1-1 در کد فرست

    عزیز من وقتی توی هر دوطرف رابطه یک Navigtion از نوع کلاس اون یکی تعریف کنی میشه رابطه 1 به 1
    و توی بانک اطلاعاتی اگر نکاه کنید دوتا کلید اصلی درون هردو جدول میسازه در این مثال StudentId کلید اصلی هردوجدول هست

    وقتی هم تنظیمات زیر انجام دادیم میاد کلید اصلی جدول StudentAddress تبدیل به Foreignkey میکنه
    یعنی عبارات لامبدایی که جلوی HasOptional قرار میگیره میشه کلید فرعی یا خارجی وبا WithRequired کلید اصلی یا principal مشخص میشه

    دیگه از این ساده تر نمیتونستم بگم


    this.HasOptional(x => x.StudentAddress )
    .WithRequired(x => x.Student)
    .WillCascadeOnDelete();


تاپیک های مشابه

  1. نحوه پیاده سازی دو جدول با رابطه چند به چند
    نوشته شده توسط SMRAH1 در بخش Access
    پاسخ: 6
    آخرین پست: یک شنبه 02 تیر 1392, 20:20 عصر
  2. نحوه ی رابطه دهی جداول در php myadmin
    نوشته شده توسط milad.biroonvand در بخش PHP
    پاسخ: 1
    آخرین پست: جمعه 27 خرداد 1390, 20:58 عصر
  3. نحوه ایجاد رابطه یک به یک
    نوشته شده توسط amin1000 در بخش SQL Server
    پاسخ: 1
    آخرین پست: سه شنبه 25 خرداد 1389, 17:06 عصر
  4. نحوه config کردن mail server
    نوشته شده توسط bitaaa در بخش شبکه و Networking‌
    پاسخ: 0
    آخرین پست: شنبه 01 خرداد 1389, 18:36 عصر
  5. نحوه گزارشگیری از دو جدول که با هم رابطه ندارند چگونه است؟
    نوشته شده توسط hassan_kahrizy در بخش گزارش سازی با Crystal Report
    پاسخ: 5
    آخرین پست: سه شنبه 31 مرداد 1385, 16:59 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •