Das System zu verwenden.Guid als Primärschlüssel ASP.Net MVC?

Habe ich eine Tabelle in der Datenbank, hat ein System.Guid als primärer Schlüssel. Die erforderlichen ADO.Net Entity Framework-Modell generiert wurde und die erforderlichen gespeicherten Prozeduren zugeordnet wurde.

Ich habe einen neuen controller und Hinzugefügt, die die grundlegenden erforderlichen code für das Erstellen und Bearbeiten der Daten. Jedoch, wenn der Klick auf den link zum Bearbeiten eines bestimmten Datensatzes wird der folgende Fehler generiert:


The parameters dictionary contains a null entry for parameter '[MyId]' of non-nullable type 'System.Guid' for method 'System.Web.Mvc.ActionResult Edit(System.Guid)' in '[MySite].[MyController].[SpecificController]'. To make a parameter optional its type should be either a reference type or a Nullable type.
Parameter name: parameters

Den edit-Aktion deklariert ist der controller wie folgt:

public ActionResult Edit(Guid itemId)
{
    return View();
}

[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Edit(MyItem itemToModify)
{

}

Beim hinzufügen eines neuen Datensatzes die neue Guid generiert, die über eine Gespeicherte Prozedur und die Liste angezeigt, die richtige Guid. Die Url ist auch vorbei die korrekte Guid für die Bergung.

Ich kann nicht scheinen, um zu erfassen, der Punkt, an dem dies nicht, aber wie würde ich mich über eine Weitergabe-System.Guid als parameter an den Controller?

InformationsquelleAutor BinaryMisfit | 2009-09-27
Schreibe einen Kommentar