मुझे नियंत्रक में किसी फ़ंक्शन में डेटा मॉडल ऑब्जेक्ट पास करने में समस्या है। मेरा विचार इस तरह दिखता है:

    @model StudentsScraper.Models.Student
<tr>
    <td>@Html.RouteLink("Edytuj", new { controller = "Admin", action = "Edit", st = Model}) </td>
    <th>
        @if (File.Exists(string.Format("~/Upload/Data/{0}.jpg", @Model.StudentIndex)))
        {
            <img src="@string.Format("~/Upload/Data/{0}.jpg", @Model.StudentIndex)" class="rounded float-left" alt="@Model.StudentIndex" />
        }
        else
        {
            @Model.StudentIndex
        }
    </th>
    <td>@Model.Name</td>
    <td>@Model.Surname</td>
    <td>@Model.Gradute</td>
    <td>@Model.Degree</td>
    <td>@Model.EmailUniversity</td>
    <td>@Model.PersonalEmail</td>
    <td>@Model.DateOfBirth</td>
    <td>@Model.Phone</td>
    <td>@Model.University</td>
    <td>@Model.DepartmentName</td>
    <td>@Model.YearOfUniversityEntrance</td>
</tr>

नियंत्रक में मेरा कार्य इस तरह दिखता है:

        public ActionResult Edit(Student st)
        {
            return View("EditDaneView", st);
        }

प्रारंभ करने के बाद, फ़ंक्शन पैरामीटर में केवल खाली वस्तु दिखाई देती है। तो मेरा सवाल यह है कि मॉडल को नियंत्रक में कार्य करने के लिए कैसे पास किया जाए?

0
user9511356 31 मार्च 2020, 14:04

1 उत्तर

सबसे बढ़िया उत्तर

लिंक में छात्र की आईडी शामिल करें:

<td>@Html.RouteLink("Edytuj", new { controller = "Admin", action = "Edit", id = Model.StudentIndex }) </td>

आपको एक और दृश्य Edit.cshtml बनाने की भी आवश्यकता है जो कि वास्तविक संपादन फ़ॉर्म होगा जिसकी ओर RouteLink इंगित कर रहा है:

संपादित करें.सीएसएचएमएल:

@model StudentsScraper.Models.Student

@using (Html.BeginForm())
{
    @Html.HiddenFor(m => m.StudentIndex) // send the id of the edited user back in a hidden field

    @Html.TextBoxFor(m => m.Name)
    @Html.TextBoxFor(m => m.Surname)

    [... other fields]
}

कृपया ध्यान दें, दृश्य का नाम Edit.cshtml नियंत्रक Edit में कार्रवाई के नाम से मेल खाता है। इसके अलावा आप Edit विधि को HttpPost विशेषता से सजा सकते हैं:

[HttpPost]
public ActionResult Edit(Student st)
0
Martin Staufcik 31 मार्च 2020, 12:01