Projekt-Anfragen: Tel: 07022/9319004 info@CodeDocu.de Software Entwicklung in C# WPF Asp.Net Core Vba Excel Word SQL-Server EF Linq, UWP Net
#

 

 

Im Controller erstellt man eine neue Action Methode mit der Bezeichnung New

public IActionResult New()

        {

            //----< New() >----

            //*leeres eingabe-formular fuer neuen Datensatz

            return View();

            //----</ New() >----

        }

 

Dann klickt man bei der new() Methode auf den Kontext -> Add View..

 

Und im Dialog Add MVC View wird als Vorgabe View name: New erstellt.

Am Besten übernimmt man in Template die Create-Auswahl und bindet bei Model-Class die passende Tabellen-Klasse an wie hier Artikel aus /Models/Artikel

 

Dadurch wird eine gute Vorlage für einen Neueintrag in der Tabelle erstellt

 

TagHelper Unter ASP.Net Core MVC

Das Model/Views/New werden die TagHelper asp-for direkt in die HTML Labels eingebaut. Dadurch werden die HTML Labels zur Laufzeit im IIS Server zu passenden ASP Funktionalitäten erweitert.

Microsoft ASPNetCore.MVC.TagHelper asp-for

 

Bei Form wird der Name hinzugefügt

<form asp-action="New">

Beim Tag asp-validation wird in der Ausgabe eine Gültigkeitsprüfung hinzugefügt

<div asp-validation-summary="ModelOnly" class="text-danger"></div>

 

Bei Label wird die Focus-weiterleitung zum passenden Eingabefeld eingefügt

<label asp-for="Title" class="control-label"></label>

 

Am Ende wird ein Button eingefügt, welcher beim Erstellen zur Action Create führt und hier die Formular-Daten mit übernimmt.

<div class="form-group">

                <input type="submit" value="Create" class="btn btn-default" />

            </div>

 

 

 

Eingabe Code der View New

/Views/Artikel/New.cshtml

@model ArtikelWeb.Models.Artikel

 

@{

    ViewData["Title"] = "New";

    Layout = "~/Views/Shared/_Layout.cshtml";

}

 

<h2>New</h2>

 

<h4>Artikel</h4>

<hr />

 

 

<div class="row">

    <div class="col-md-4">

        <form asp-action="New">

            <div asp-validation-summary="ModelOnly" class="text-danger"></div>

            <div class="form-group">

                <label asp-for="Title" class="control-label"></label>

                <input asp-for="Title" class="form-control" />

                <span asp-validation-for="Title" class="text-danger"></span>

            </div>

            <div class="form-group">

                <label asp-for="Text_Content" class="control-label"></label>

                <input asp-for="Text_Content" class="form-control" />

                <span asp-validation-for="Text_Content" class="text-danger"></span>

            </div>

            <div class="form-group">

                <label asp-for="IDProduktgruppe" class="control-label"></label>

                <input asp-for="IDProduktgruppe" class="form-control" />

                <span asp-validation-for="IDProduktgruppe" class="text-danger"></span>

            </div>

            <div class="form-group">

                <label asp-for="Preis" class="control-label"></label>

                <input asp-for="Preis" class="form-control" />

                <span asp-validation-for="Preis" class="text-danger"></span>

            </div>

            <div class="form-group">

                <label asp-for="IDHersteller" class="control-label"></label>

                <input asp-for="IDHersteller" class="form-control" />

                <span asp-validation-for="IDHersteller" class="text-danger"></span>

            </div>

            <div class="form-group">

                <input type="submit" value="Create" class="btn btn-default" />

            </div>

        </form>

    </div>

</div>

 

<div>

    <a asp-action="Index">Back to List</a>

</div>

 

 

 

Browser Ansicht der Eingabe Formular

Die Label asp-for Felder zeigen den Text zum Eingabeelement an, welcher direkt aus dem Model abgeleitet wird. Das heißt, dass hier der interne Feldname angezeigt wird.

Dafür wird beim Klick auf das Label eines Felder der Fokus in das Eingabefeld springt.

 

Die Felder mit der ID vom Typ Long werden automatisch mit eine up-down counter angezeigt.

 

Als Referenz gilt die angebundene Tabelle aus der SQL Datenbank

 

 

Vergleich MVC5 Schreibweise

Alternative Schreibweise mit @Razor:

Unter ASP MVC 5

@model ArtikelWeb.Models.Artikel

 

@{

    ViewData["Title"] = "New";

    Layout = "~/Views/Shared/_Layout.cshtml";

}

 

<h2>New</h2>

 

<h4>Artikel</h4>

<hr />

 

@using (Html.BeginForm("Create", "Artikel"))

{

    //<Form >

    <div>

        <@Html.LabelFor(a=>a.Title)>

        <@Html.TextBoxFor(a=>a.Title, new {@class="form-control" } )>

    </div>

 

    //</Form >

}

 

 

Video Tutorial

https://www.youtube.com/watch?v=_ajpjNHOylY&feature=youtu.be

Mobile
»
🚩#24 ASP.Net MVC Core: Web API Schnittstelle hinzufügen
»
🚩#10 Datenbank erstellen und an ASP.Net MVC Core anbinden
»
🚩#23 ASP.Net: Validation farblich anpassen
»
🚩#22 ASP.Net: Validation, Gültigkeit
»
🚩#21 ASP.Net: Update von Daten mit Speichern der Edit View
»
🚩#20 Formular Daten binden und in Datenbank anfügen
»
🚩#19 ASP.Net Core MVC : DropDown Liste einfügen
»
🚩#18 ASP.Net: Label anpassen
»
🚩#17 ASP MVC: New-Formular zum Erstellen eines Eintrags
»
EF: Standardwerte vorgeben und Typ Double und Bool von ASP.Net Model zu SQL Server

.

Jobs, Projekte, Angebote für Freiberufler, Selbstständig an Info@CodeDocu.de