[C#] EF 4.0 - DropDown Select übergabe von ForeignKeys (Id's)


Gunah

Erfahrenes Mitglied
#1
Moin,

bin recht neu in der C# Umgebung und muss noch mit den Methoden Namen kämpfen...
Und hänge eher an den Kleinigkeiten als an den Großen Sachen Fest ^^

Nutze im Aktuellem Projekt: ASP.NET 4.0 - C# - Razor - EF 4.0
Da es an sich ein Einfaches Modell ist.


EF:
Code:
    public class Item
    {
        public int Id { get; set; }
        public string Name { get; set; }
        [Column(TypeName = "ntext")]
        public string Text { get; set; }
        public Color Color { get; set; }
        public Group Group { get; set; }
    }
Die Item Tabelle besitzt eine 1:1 Beziehung zu "Color" und "Group", gespeichert wird wie folgt:
Code:
        public ActionResult Create([Bind(Exclude = "Id")] Item ItemToCreate)
        {
            if (!ModelState.IsValid)
                return View();

            _db.Item.Add(ItemToCreate);
            _db.SaveChanges();
}
Das Template sieht wie folgt aus:
Code:
        <p><label for="Color">Farbe:</label>
            @Html.DropDownList("Color", new SelectList((System.Collections.IEnumerable)ViewBag.Colors, "Id", "Name"), "Farbe Wählen!")
            @Html.ValidationMessage("Color", "*")
        </p>
        <p><label for="Color">Gruppe:</label>
            @Html.DropDownList("Groups", new SelectList((System.Collections.IEnumerable)ViewBag.Groups, "Id", "Name"), "Gruppe Wählen!")
            @Html.ValidationMessage("Groups", "*")
        </p>
Allerdings habe ich schon gemerkt, dass bei Color (DB: Color_Id) bspw. das Model und nicht die Id erwartet wird.
Hier stellt sich mir die Frage, wie ich dieses am Besten richtig übergebe?

Hoffe könnt mir da Helfen, im Netz vermutlich nach den Falsche Begriffen gesucht.

Besten Dank