Supprimer la ligne ASP.NET MVC ADO.NET Modèle d'entité

Je suis un peu newbie avec asp.net MVC environnement

je suis en train de supprimer la LIGNE à partir de 3 table/de l'entité(parce que je suis en utilisant ado.net modèle de données d'entité à générer la base de données automatiquement) le problème, c'est quand mon supprimer la fonction est exécuté une seule LIGNE à partir du 1er tableau est supprimé..

PS: j'ai aussi déjà créer la relation entre les 3 table

voici mon controller:

    [HttpPost, ActionName("Delete")]
    [ValidateAntiForgeryToken]
    public ActionResult DeleteConfirmed(int id)
    {
        //i've edited this code, i think the problem lies in this code bellow
        //start edited code
        ms_student ms_student = db.ms_student
             .Include(i => i.ms_person) 
             .Include(i => i.ms_person.ms_user)
             .Where(i => i.user_id_student == id)
             .Single(); 
        //end edited code

        db.ms_student.Remove(ms_student);
        db.SaveChanges();
        return RedirectToAction("Index");
    }

c'est mon ms_user modèle:

namespace test.Models
{
    using System;
    using System.Collections.Generic;

    public partial class ms_user
    {
        public int ID { get; set; }
        public string password { get; set; }
        public string salt { get; set; }
        public Nullable<int> administrative_type_id { get; set; }
        public string email_login { get; set; }

        public virtual ms_person ms_person { get; set; }
    }
}

c'est ms_person modèle:

namespace test.Models
{
using System;
using System.Collections.Generic;
public partial class ms_person
{  
public int ID { get; set; }
public Nullable<int> family_id { get; set; }
public string first_name { get; set; }
public string last_name { get; set; }
public string email { get; set; }
public string address { get; set; }
public string phone_address { get; set; }
public string mobile_phone_number { get; set; }
public string gender { get; set; }
public Nullable<System.DateTime> date_of_bith { get; set; }
public Nullable<System.DateTime> date_start { get; set; }
public Nullable<System.DateTime> date_end { get; set; }
public string status { get; set; }
public string identification_ID { get; set; }
public string passport { get; set; }
public Nullable<int> user_type_id { get; set; }
public string file_image { get; set; }
public virtual ms_student ms_student { get; set; }
public virtual ms_user ms_user { get; set; }
}
}

Enfin mon ms_person modèle:

namespace test.Models
{
using System;
using System.Collections.Generic;
public partial class ms_student
{
public int user_id_student { get; set; }
public int student_code { get; set; }
public int course_id { get; set; }
public string degree { get; set; }
public Nullable<int> current_semester { get; set; }
public string cuti_session { get; set; }
public virtual ms_person ms_person { get; set; }
}
}

juste vous faire savoir que le modèle de code est généré automatiquement, je suis en utilisant ado.net modèle d'entité et la seule table/l'entité qui a supprimé ne sont que les ms_student table(désolé, je suis un peu confus avec de nommage: modèle ou de l'entité ou de la table)

l'ID sur ms_person sont incrément automatique PK
l'ID sur ms_user fait le FK également le PK de ms_person
et (bêtement de moi pour le nommage différentes) user_id_student fait le FK également le PK de ms_person

merci beaucoup

InformationsquelleAutor user3848402 | 2014-07-17