MVC3-Passing-Modell, Controller - Eingang Null-Werte

Ich begann mit MVC3 ein paar Wochen alt und jung in der Programmierung Leiter, ich Lerne noch einiges. Ich habe seit kurzem das arbeiten mit Modellen, mit TextBoxFor und andere Helfer zum Auffüllen Eigenschaften für mein "Charakter" - Modell.

Im wesentlichen das, was ich versuche zu tun, ist die Definition eines Modells und dann übergeben es an meinem controller, aber jede Eigenschaft, die ich definiert haben, als ein statischer Wert in meinem Modell übergeben wird als null-Wert zur Laufzeit.

Unten sind einige Ausschnitte der Teile benötigt, um zu verstehen, was Los ist..

Character.cs - Model

    //Instances of manipulated objects.
    otReal db = new otReal();

    public player newPlayer = new player();

    public byte[] conditions
    {
        get
        {
            return newPlayer.conditions;
        }
        set
        {
            byte[] array1 = null;

            array1 = new byte[16 * 12 * 3];            

            newPlayer.conditions = array1;
        }
    }

CharacterController.cs

    [AcceptVerbs(HttpVerbs.Post)]
    public ActionResult Submit(Character c)
    {
        //Add a new character to the database via LINQ to Entities.         
        otReal.AddToplayers(c.newPlayer);
        otReal.players.AddObject(c.newPlayer);
        otReal.SaveChanges();

        return View();
    }

Nur Helfer, ich habe in meiner Ansicht sind diejenigen, die der Anwender tatsächlich benötigt, um die Interaktion mit. Wenn ich in meinem controller, und setzen Sie die Werte dort sind, bekommen Sie auf den korrekten Wert gesetzt, und es wird legen. Jede Hilfe wäre sehr geschätzt werden!

Index.cshtml - View
@using (Ajax.BeginForm("Submit", new AjaxOptions { OnComplete = "done" }))
{
@Html.ValidationSummary(true)
<fieldset>
    <legend>New Character Information</legend>
    <div class="editor-label">
        @Html.LabelFor(model => model.Name, "Character Name")
    </div>
    <div class="editor-field">
        @Html.EditorFor(model => model.Name)
        @Html.ValidationMessageFor(model => model.Name)
    </div>
    <div class="editor-label">
        @Html.LabelFor(model => model.TownList)
    </div>
    <div class="editor-field">
        @* @Html.DropDownList("TownList", ViewData["TownList"] as SelectList)*@
        @Html.DropDownListFor(model => model.TownList, ViewData["TownList"] as SelectList)
        @Html.ValidationMessageFor(model => model.TownList)
    </div>
    <div class="editor-label">
        @Html.LabelFor(model => model.Sex)
    </div>
    <div class="editor-field">
        @Html.DropDownListFor(model => model.Sex, ViewData["sex"] as SelectList)
        @Html.ValidationMessageFor(model => model.Sex)
    </div>
    <div class="editor-label">
        @Html.LabelFor(model => model.Vocation)
    </div>
    <div class="editor-field">
        @Html.DropDownList("VocList", ViewData["VocList"] as SelectList)
        @Html.ValidationMessageFor(model => model.Vocation)
    </div>
    <p>
        <input id="button" type="submit" value="Create" />
    </p>
    <div style="font-family: Tahoma; font-size: large" id="completeDiv" style="display: none;">
    </div>
    <span></span>
</fieldset>

}

Im Grunde, was ich versuche zu tun, hier ist mein Modell, dass hat eine Reihe von Basis-Werte, die jedes 'Zeichen' wird in der Datenbank-Tabelle. Auf diese Weise, wenn ein Spieler schafft sich sein/Ihr Charakter, den er/Sie in der Lage, geben Sie ein Zeichen ein Name, Geschlecht, Klasse(Berufung), die Ausgehend von der Stadt und alle anderen Werte werden aufgefüllt, die hinter den kulissen und an den controller für die Schöpfung.

Sie werden wahrscheinlich brauchen, um uns zu zeigen, einige Anzeigen-code als auch. Speziell der form, dass Beiträge zu CharacterController.Submit()
Können Sie liefern etwas mehr Informationen, was genau wollen Sie tun, welche Fehler sind Sie immer und auf welcher Zeile der code bedeutet, dass Fehler auftreten?
Die Fehlermeldung, die ich bekomme ist, dass die "Bedingungen" darf nicht null sein, weil es eine NICHT NULLWERTFÄHIGE Spalte in SQL. Aber die obige Eigenschaft, die Sie sehen, ist die Basis-setup für jede Eigenschaft, die ich habe ich ziemlich viel entweder statisch oder legen Sie es auf einem "Wert" übergeben wird, aus der Ansicht.

InformationsquelleAutor jhartzell | 2011-04-17

Schreibe einen Kommentar