Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Neues ASP.NET Project mit .NET Core 2.0 oder lieber MVC?
camelord
myCSharp.de - Member

Avatar #avatar-2671.jpg


Dabei seit:
Beiträge: 256
Herkunft: Ravensburg

Themenstarter:

Neues ASP.NET Project mit .NET Core 2.0 oder lieber MVC?

beantworten | zitieren | melden

Hi,

ich beginne ein neues ASP.NET Projekt und Frage mich, ob man mittlerweile mit .NET Core starten kann oder lieber noch MVC benutzen sollte..

Gruß
camelord
private Nachricht | Beiträge des Benutzers
markl
myCSharp.de - Member

Avatar #fz7qMfY8MI8pYqaUBFH8.png


Dabei seit:
Beiträge: 78

beantworten | zitieren | melden

Auch in .NET Core benutzt du MVC, nur eben ASP.net Core MVC
Und Ja, man kann mit .NET Core starten ... sollte das auch.
http://dotnet-paderborn.azurewebsites.net/
private Nachricht | Beiträge des Benutzers
camelord
myCSharp.de - Member

Avatar #avatar-2671.jpg


Dabei seit:
Beiträge: 256
Herkunft: Ravensburg

Themenstarter:

beantworten | zitieren | melden

Gut danke..
Du hast natürlich recht - ich meine die vorherige technologie.
vor nem Jahr ungefähr wurde mir noch noch abgeraten, da Core noch nicht soweit war für den produktiven einsatz.
Die Roadmap hat noch ein paar features offen..
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15.752

beantworten | zitieren | melden

Du vermischt quasi alles, was man so vermischen kann ;-)

- .NET Core ist eine Runtime
- ASP.NET eine Technologie/Engine - diese kann man aktuell sowohl auf .NET Core wie auch auf .NET Framework verwenden
- MVC eine Middleware(Feature); man kann sie aktivieren - muss es aber nicht. "ASP.NET Core MVC" gibt es nicht.
ASP.NET Core ist der Produktname - und MVC eben nur eines von vielen vielen Features.

Ab .NET Core 2.0 ist es zu empfehlen - davor sehr eingeschränkt.
Wenn man nicht .NET Framework *muss*, sollte man .NET Core verwenden.
private Nachricht | Beiträge des Benutzers
camelord
myCSharp.de - Member

Avatar #avatar-2671.jpg


Dabei seit:
Beiträge: 256
Herkunft: Ravensburg

Themenstarter:

beantworten | zitieren | melden

Perfekt - danke dir
private Nachricht | Beiträge des Benutzers
Palin
myCSharp.de - Member



Dabei seit:
Beiträge: 1.090

beantworten | zitieren | melden

Was du dir auch mal anschauen kannst ist. .Net Core nur für das Backend zu verwenden und für das Frontend Angular oder Aurelia einzusetzen.
Sollte man mal gelesen haben:

Clean Code Developer
Entwurfsmuster
Anti-Pattern
private Nachricht | Beiträge des Benutzers
T-Virus
myCSharp.de - Member



Dabei seit:
Beiträge: 1.961
Herkunft: Nordhausen, Nörten-Hardenberg

beantworten | zitieren | melden

Palins Vorschlag nutzen wir auch aktuell für einen Projekt Relaunch.
Dort stellt ASP .NET Core sowohl den Server als auch mit WebAPI eine REST Schnittstelle mit JSON als Format zwischen Server und Client bereit.

Das Web selbst ist als SPA konzipiert und wird mit Angular 2+ auf Typescript Basis umgesetzt.
Die Clients kommunizieren dann nur noch über WebAPI mit dem Server.
Lässt sich super umsetzen, sobald man sich einmal in Angular und WebAPI eingearbeitet hat.

T-Virus
Developer, Developer, Developer, Developer....

99 little bugs in the code, 99 little bugs. Take one down, patch it around, 117 little bugs in the code.
private Nachricht | Beiträge des Benutzers
markl
myCSharp.de - Member

Avatar #fz7qMfY8MI8pYqaUBFH8.png


Dabei seit:
Beiträge: 78

beantworten | zitieren | melden

@Abt:
Zitat
"ASP.NET Core MVC" gibt es nicht.

Wat? Kannst du das kurz erklären?
http://dotnet-paderborn.azurewebsites.net/
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15.752

beantworten | zitieren | melden

MVC war früher wie WebAPI ein eigenes Produkt - das gibt es so nicht mehr.

Das Produkt heisst "ASP.NET Core" und Funktionalitäten werden über Middlewares hinzugefügt - zB. Mvc oder Http APIs.

Man kann aber ASP.NET Core auch völlig ohne Mvc oder API betreiben.
Machen wir zB. bei Services, die nichts anderes machen als auf einen Message Bus zu hören aber keinerlei HTTP Features haben.

Und noch weiter gesponnen: das Pipelining von Kestrel ermöglich sogar MVC-behavior völlig ohne ASP.NET Core zu betreiben.
private Nachricht | Beiträge des Benutzers
camelord
myCSharp.de - Member

Avatar #avatar-2671.jpg


Dabei seit:
Beiträge: 256
Herkunft: Ravensburg

Themenstarter:

beantworten | zitieren | melden

Sehr schön - danke für die Tips!

Gibt es auch einen Front-End Theme, der mit Razor funktioniert?
private Nachricht | Beiträge des Benutzers
Taipi88
myCSharp.de - Member

Avatar #avatar-3220.jpg


Dabei seit:
Beiträge: 1.029
Herkunft: Mainz

beantworten | zitieren | melden

Hi,

um's kurz zu machen: Hä?

Wenns html/js ist - dann lässt es sich mit Razor machen.

Oder meinst du etwas anderes?

LG
private Nachricht | Beiträge des Benutzers
MrSparkle
myCSharp.de - Team

Avatar #avatar-2159.gif


Dabei seit:
Beiträge: 5.655
Herkunft: Leipzig

beantworten | zitieren | melden

Hi camelord,
Zitat von camelord
einen Front-End Theme

meinst du so etwas wie Bootstrap oder Material?
Weeks of programming can save you hours of planning
private Nachricht | Beiträge des Benutzers
camelord
myCSharp.de - Member

Avatar #avatar-2671.jpg


Dabei seit:
Beiträge: 256
Herkunft: Ravensburg

Themenstarter:

beantworten | zitieren | melden

Ein Front-End Theme ist für mich sowas: Inspinia

Den hatte ich sehr gerne mit ASP.NET MVC5 benutzt.
Wenn ich nun ASP.NET Core 2.0 mit Razor und Tag Helper verwende, kann ich diesen Theme nicht mehr verwenden, da nicht unterstützt.

Daher rührt die Frage..
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15.752

beantworten | zitieren | melden

Ähm... was?

Razor ist eine Engine um HTML zu erzeugen. Und Dein Theme ist nichts anderes als eine Zusammenstellung von HTML.
Warum sollte das Theme mit Razor nicht funktionieren? Das macht kein Sinn.
private Nachricht | Beiträge des Benutzers
emuuu
myCSharp.de - Member

Avatar #avatar-4078.jpg


Dabei seit:
Beiträge: 285

beantworten | zitieren | melden

Zitat von camelord
Wenn ich nun ASP.NET Core 2.0 mit Razor und Tag Helper verwende, kann ich diesen Theme nicht mehr verwenden, da nicht unterstützt.

Ich verwende zufällig genau dieses Theme für ein ASP.NET Core 2.0 Projekt und das funktioniert ziemlich problemlos.

Du solltest beachten, dass die Beispielprojekte von Inspinia kein .netcore 2.0 sondern ein .netcore1.0 Projekt enthält. Eine Portierung des Beispiels auf 2.0 hat noch nicht stattgefunden.

D.h. du kannst es nicht einfach blindcopypasten. Allerdings sind alle für dich relevanten Informationen sowieso im Views-Ordner in den einzelnen .cshtml-Dateien. Und die sind meiner Erinnerung nach pures HTML ohne sonstigen .net-Code (bist auf @Url.Action(..) im href).


Beste grüße
emuuu
2+2=5 (für extrem große Werte von 2)
private Nachricht | Beiträge des Benutzers
camelord
myCSharp.de - Member

Avatar #avatar-2671.jpg


Dabei seit:
Beiträge: 256
Herkunft: Ravensburg

Themenstarter:

beantworten | zitieren | melden

danke @emuuu - dann wäre das der Fallback.
Jetzt wäre es doch super, wenn der von Razor generierte HTML Code dem Theme entsprechen würde..
private Nachricht | Beiträge des Benutzers
Coffeebean
myCSharp.de - Team

Avatar #avatar-3295.gif


Dabei seit:
Beiträge: 2.207
Herkunft: Deutschland/Schweiz

beantworten | zitieren | melden

Hallo camelord,
Zitat von camelord
Jetzt wäre es doch super, wenn der von Razor generierte HTML Code dem Theme entsprechen würde..

Genau das kannst du ja mit Razor machen :) Loops über deine Items etc. so dass am Ende das HTML rauskommt, was du wolltest.

Gruss

Coffeebean
private Nachricht | Beiträge des Benutzers
emuuu
myCSharp.de - Member

Avatar #avatar-4078.jpg


Dabei seit:
Beiträge: 285

beantworten | zitieren | melden

Zitat von camelord
wenn der von Razor generierte HTML Code dem Theme entsprechen würde..

Wie Coffeebean schon gesagt hat, musst du nun dein Model entsprechend einbinden.

<div class="full-height-scroll">
		<div class="table-responsive">
		<table class="table table-striped table-hover dataTable table-search">
			<tbody>
				@foreach (var place in Model.Places)
				{
					<tr>
						<td>@place.PlaceName</td>
						<td>@place.Address</td>
						<td>@place.ZipCode</td>
						<td>@place.City</td>
					</tr>
				}
			</tbody>
		</table>
	</div>
</div>


Edit:
Was du unbedingt beachten solltest ist, dass die Inspinia die stylsheets und nötigen scripts in _Layout.cshtml einbindet und diese entsprechend in _ViewStart.cshtml referenziert.

Das hat den Effekt, dass bei return View() zunächst _Layout geladen wird und dein Browser später auch weiß was er mit all den tollen css-Klassen anfangen soll.
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von emuuu am .
2+2=5 (für extrem große Werte von 2)
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15.752

beantworten | zitieren | melden

Man muss jede Template Sprache in eine Konstrukt einfügen.
Das gilt für Razor genauso wie für Handlebars oder alles andere.

Deswegen sind das auch einfach nur Vorlagen.
Und natürlich erzeugt dann eine Template Sprache genau das, was man definiert. Hellsehen kann auch Razor nicht.
private Nachricht | Beiträge des Benutzers
camelord
myCSharp.de - Member

Avatar #avatar-2671.jpg


Dabei seit:
Beiträge: 256
Herkunft: Ravensburg

Themenstarter:

beantworten | zitieren | melden

Ok verstanden - krieg ich hin.
vielen Dank!
private Nachricht | Beiträge des Benutzers