Professional Documents
Culture Documents
Asp Net 8 Best Practices 1 Converted Edition Jonathan R Danylko Full Chapter
Asp Net 8 Best Practices 1 Converted Edition Jonathan R Danylko Full Chapter
11 St Paul’s Square
Birmingham
B3 1RB, UK
ISBN 978-1-83763-212-1
www.packtpub.com
To my family, for their continued support throughout my career
(even though I tend to live in the o ce).
To my colleagues and mentors: this book is a culmination of our
discussions, experiences, and solutions (and some fires) we’ve
encountered over the years.
To my readers and supporters on DanylkoWeb.com, who allow
me to turn their questions into blog posts to further everyone’s
knowledge in the end.
Finally, to my parents, who bought me that Commodore VIC-20
when I was 11, which started me on my journey of building
software.
–Jonathan
Contributors
Preface
G itFlow
H otfix b ra nches
G itH ub Flow
G itL a b Flow
Sum m a ry
Wha t is CI/ CD ?
P ulling Cod e
Fa lling Forw a rd
D ep loying D a ta b a ses
G itH ub Actions
G oog le CI
Sum m a ry
3
Using M id d lew a re
D efer to Asynchronous
P rioritizing the O rd er
Sum m a ry
4
D o I ha v e a ny sensitiv e d a ta to p rotect?
Securing Access
L og g ing
Injection
Sum m a ry
E x tension M ethod s
Using Async/ Aw a it
O v erv iew
Sum m a ry
Using a ta sk runner
Wha t is a ta sk runner?
Sum m a ry
7
Testing Your Code
Unit tests
L oa d testing
UI testing
Using AAA
Av oid testing . N E T
Testing d a ta a ccess
Sum m a ry
Sum m a ry
D esig ning AP Is
Testing Web AP Is
Versioning AP Is
Sum m a ry
10
D a ta b a ses
Sum m a ry
11
Appendix
D RY
YAG N I
K ISS
SO L ID p rincip les
P roject structure
Und ersta nd ing the p roject la nd sca p e
Sum m a ry
T ha nk you!
Index
The ideal developer setup for the book is to have Visual Studio
2022 Enterprise, Git, and SQL Server Management Studio
already installed.
We also have other code bundles from our rich catalog of books
and videos available at https://github.com/PacktPublishing/.
Check them out!
Conventions used
There are a number of text conventions used throughout this
book.
Code in text: Indicates code words in text, database table
names, folder names, filenames, file extensions, pathnames,
dummy URLs, user input, and Twitter handles. Here is an
example: “A better approach would be using the newest
TryParse with var, as shown here.”
Get in touch
Feedback from our readers is always welcome.
Do you like to read on the go but are unable to carry your print
books everywhere? Is your eBook purchase not compatible
with the device of your choice?
Don’t worry, now with every Packt book you get a DRM-free
PDF version of that book at no cost.
The perks don’t stop there, you can get exclusive access to
discounts, newsletters, and great free content in your inbox
daily
https://packt.link/free-ebook/978-1-83763-212-1
Branching Strategies
Creating short-lived branches
Always “Get Latest” Before Committing
Understanding Common Practices
Technical requirements
While this section touches on a number of guidelines regarding
source control, the only requirement for this chapter is a
computer with any OS. Git is optional.
If you don’t have Git installed, you can download and install it at
the following URL:
https://git-scm.com/
https://mermaid-js.github.io
Branching Strategies
In this section, we’ll explore various branching strategies,
explaining how each one works, and highlighting the
differences between them.
GitFlow
The main branch is what you start with when creating a new
repository. The purpose of this branch is to always have stable
and production-ready code for release at any time.
Wir treten jetzt in eine Zeit, die nicht allein eine starke
Durchdringung von Volkstum und Kultur zeigt, sondern in der das
eigentlich charakteristische Moment das Überwiegen volkstümlicher
Elemente ist. Die anfangs nur schwer als Unterströmung erkennbare
Volkstümlichkeit hatte sich zunächst in der aristokratischen
Laienkultur des Rittertums trotz aller romanisch-konventionellen
Züge zu immerhin greifbarer Erscheinungsform durchgerungen.
Auch die bäuerliche Schicht, der große Born der nationalen Kraft,
das Element zäher Beharrung in Leben, Fühlen und Denken, trat um
diese Zeit stärker und eindrucksvoller hervor. Aber die geistige
Abgesondertheit und kulturelle Rückständigkeit des Bauerntums ließ
dieses, trotzdem es am besten alles Volkstümlich-Natürliche
bewahrte, bei dem nun folgenden Aufschwung auch der niederen
Volksschichten doch nicht oder, besser, bei dem Fortschritt der
Zeiten nicht mehr zur bestimmenden Macht für das Gesamtleben der
Nation werden. Das wurde vielmehr die Bevölkerung der Städte, und
als nachmals das Bauerntum, nicht nur wegen vermehrter,
namentlich öffentlicher Lasten und sozialer Nöte, sondern auch aus
einem gewissen geistig-persönlichen Drange nach größerer Geltung
heraus sich selbst gewaltsam durchzusetzen suchte, da war es zu
spät.
Hingegen hatte das Bürgertum die Vorteile seiner größeren
geistigen Beweglichkeit, des weiteren Gesichtskreises,
fortgeschrittener wirtschaftlicher Betätigung und einer zum erstenmal
dauernd in die Erscheinung tretenden engeren Vereinigung von
Massen. Die allmählich immer zunehmende höhere, recht eigentlich
städtische Kultivierung fiel bei dem starken Zusammenhang von
Land und Stadt nicht so ins Gewicht, daß der Städter etwa die
Gemeinsamkeit volkstümlichen Denkens gegenüber dem Landvolke
zu verlieren begann; am wenigsten konnte dies bei den niederen
städtischen Schichten der Fall sein. Dazu kam der Einfluß eines
damals sehr wichtigen Volksteils, der sich aus Land und Stadt, auch
aus den Klöstern ergänzte, eine Zeitlang in den Städten hauste, aber
dann wieder auf den Landstraßen innigen Zusammenhang mit der
Natur fand, des Elements der fahrenden Leute. Es waren die Sänger
und Spielleute, Gaukler und Fechter, die, von den Burgen verbannt,
von der Kirche verfolgt, ihr Publikum nun im eigentlichen Volk hatten;
dazu kamen herumziehende Geistliche und Scholaren, mit denen
sich Bettler und schlimmes Volk, auch niedere Reisende sonst
mischten. Diese Fahrenden verbanden Stadt und Land, sie bildeten
den besten Nährboden für alte volkstümliche Neigungen, sie waren
die Hauptträger des Volksliedes.
Immerhin ist doch vor allem die Stadt der eigentliche Untergrund
für die nun sichtbare stärkere Geltung volkstümlichen Geistes. Seit
längerer Zeit war jene Aufwärtsbewegung der unteren Schichten
eingetreten, die sich in einer Hebung der bäuerlichen Klassen, in
dem Aufkommen eines unabhängigen Bürgertums, aber auch in der
Zusammensetzung des Rittertums äußerte. Aber wie der Ritter
alsbald zu einer abgeschlossen-aristokratischen Kultur gelangt ist,
so beobachteten wir auch sonst zunächst ein allgemeines
Übergewicht des aristokratischen Geistes, auch in den Städten
(S. 102). In ihnen setzt nun gerade der Umschwung am deutlichsten
ein, d. h. eigentlich die Fortsetzung jener Aufwärtsbewegung, an der
nun immer niedrigere Schichten teilnahmen. Noch war eben das
ganze Volk selbstbewußt und stark, noch die alte Unbändigkeit nicht
ertötet; der allgemeine Drang nach Besitzmehrung und Geltung
äußerte sich auch in den niedrigen Kreisen, und zwar vor allem in
der Stadt, wo das Volk sich schon durch seine größere Masse wie
durch seine wirtschaftliche Bedeutung fühlte. Zunächst trat nicht das
eigentlich niedere Volk hervor, sondern diejenige Schicht des
Bürgertums, die nach wie vor seinen Kern ausmachte, die der
Handwerker. Sie hatten das vortreffliche Machtmittel ihrer
wirtschaftlich-genossenschaftlichen Organisationen, die zugleich zur
Grundlage der politisch-wehrhaften Organisation der Bürgerschaft
geworden waren und durch ihre Bedeutung bereits Verbote des
Kaisers (Friedrich II.) wie der Landesherren heraufbeschworen
hatten, der Zünfte. Jene in den Städten herrschende
Geschlechteraristokratie war nicht nur durch ihre Lebenshaltung und
durch ein protzenhaftes Zur-Schau-tragen des Reichtums den
unteren Klassen anstößig, sondern auch durch mannigfache
Gewalttaten und ein die Handwerker bedrückendes, sie mit Steuern
und Kriegsdiensten belastendes egoistisches Regiment geradezu
verhaßt geworden. So kam es im 13. und besonders im 14.
Jahrhundert zu oft blutig-leidenschaftlichen Bewegungen der
Handwerker gegen die Geschlechter. Sie endeten nur zum Teil mit
einer Demokratisierung der städtischen Verfassung, und selbst wo
ein erheblicher Anteil der Zünfte am Stadtregiment durchgesetzt
wurde, ergab sich im Laufe der Zeit doch wieder eine Herrschaft
weniger, so daß immer von neuem eine grollende Opposition
einsetzte, die dann freilich oft nur von den niedersten Schichten
getragen wurde.
Aber über diese inneren Gegensätze in den Städten hinaus – ein
solcher bestand z. B. auch zwischen den Gilden der Kaufleute und
den Zünften, und vielleicht muß man eine gewisse
Handelsfeindlichkeit der Zünfte mehr als bisher betonen – macht
sich der mehr demokratische oder wenigstens bürgerliche Geist der
Zeit in dem wachsenden Gegensatz zwischen den Städten
überhaupt und den Fürsten sowohl wie dem Adel immer deutlicher
fühlbar. Derjenige zu den Fürsten ist mehr politischer Natur und
hängt mit der erneuten Ausbildung der landesherrlichen Macht
zusammen. Wir sahen (S. 106), wie dem tatkräftigen Aufstieg der
Landesherrschaft im 13. Jahrhundert gegen Ende desselben durch
die Unabhängigkeitsgelüste der Stände eine Zeit der Beschränkung
fürstlicher Macht, der Abhängigkeit von den Ständen folgte. Durch
die fortgesetzte Schmälerung der Einkünfte, durch Verweigerung der
Steuern und anderer Abgaben brachen insbesondere arge Geldnöte
und Verschuldung über die Fürsten herein. Durch die
Selbstherrlichkeit der Städte, der geistlichen Herrschaften und der
durch ihre Bünde sich geltend machenden kleinen ritterlichen Herren
wurde die begonnene einheitliche Verwaltungstätigkeit zerstört und
diese auf den unmittelbaren Besitz der Fürsten beschränkt. Um das
landesherrliche Gericht kümmerte man sich nur, wenn man es
brauchte. Der Heerespflicht entzogen sich die Ritter immer häufiger,
und immer mehr war der Fürst auf Söldner angewiesen. Auf
wirtschaftlichem Gebiet spielten die Hauptrolle die Städte, die sich
auch völlig selbständig wie kleine Staaten verwalteten, ihre eigene
Gerichtsbarkeit hatten, das Münzrecht übten, in ihrer jetzt
ausgebildeten geschlossenen Stadtwirtschaft egoistische Zollpolitik
trieben, aber auch eigene Fortschritte in der Verwaltung (s. S. 118)
machten. Aber eben die schon geschilderten Folgen der großen Zahl
der selbständigen Kräfte, die Wirren und die Unsicherheit, die sich
aus ihrem freien Spiel und ihrer Zersplitterung ergaben, das
Verlangen nach einer ordnenden Obrigkeit erleichterten den
Landesherren bei dem Versagen der Reichsgewalt den neuen
Aufschwung ihrer Macht. Er setzt im 15. Jahrhundert ein, auf Kosten
des Adels, der geistlichen Herren wie der Städte. Die auf
verschiedene Weise entstehenden ständischen Verfassungen
setzen doch auch wieder die feste Zusammenfassung der Stände
unter einer Landesherrschaft voraus. Den inneren Halt der
Herrschaft sicherten jener schon früher organisierte Beamtenstaat
und zum Teil (s. S. 148) das neueindringende römische Recht. Die
notwendige Grundlage des Ganzen, insbesondere die einer
militärischen Machtentfaltung, war eine finanzielle Kräftigung, auf die
man eifrig bedacht war (Landessteuer). In der Verwaltung lernte man
jetzt viel von den Städten und ihrer geldwirtschaftlichen
Organisation: doch gelang die Durchführung solcher Aufgaben für
wichtige Gebiete meist erst im 16. Jahrhundert, zumal gegenüber
der wirtschaftlichen Macht der Städte. Jetzt, im 15. Jahrhundert,
sollten zunächst die sich mächtig entwickelnden Städte als politisch
mehr oder weniger unabhängige Faktoren beseitigt, ihre Kräfte und
Mittel den Fürsten dienstbar gemacht werden. Im späteren 15.
Jahrhundert setzten diese Kämpfe erst eigentlich ein, wurden auch
bald, wenngleich völlig erst viel später, zugunsten der Fürsten
entschieden.
Eine geradezu haßerfüllte Stimmung entwickelte sich aber,
besonders wieder im 15. Jahrhundert, zwischen dem Bürger und
dem niederen Adel. Auf jenen wirkte der immer hochmütigere und
peinlichere Abschluß gerade des verfallenden Rittertums verbitternd.
Andererseits ergab die zunehmende Verarmung des Adels, der
überdies bei dem späteren Aufkommen des Fußvolks, auch einem
demokratischen Zug, seine militärische Bedeutung und zugleich den
lohnenden Söldnerdienst einbüßte, einen zornigen Haß gegen die
immer reicheren städtischen »Pfeffersäcke«, die ihrerseits nach Art
der Emporkömmlinge es zum Teil dem Adel gleichzutun suchten.
Diese Verarmung ließ den Adel den Bauerndruck erneuern, dem
geistlichen Gut nachstellen, den Nachbarn befehden, ließ ihn in tiefe
Verschuldung bei den Juden geraten und im Fürstendienst in Hof
und Verwaltung oder für die jüngeren Söhne in den Domkapiteln ein
Unterkommen suchen; sie trieb ihn aber auch, sich an dem
Kaufmann in Fortsetzung der hergebrachten Räubereien durch
Wegelagerei schadlos zu halten, sich an dem vermeintlich zu
Unrecht erworbenen Reichtum des Bürgers mit Gewalt seinen Anteil
zu sichern und den Pfeffersack zugleich für seine Anmaßung zu
züchtigen. Mancher mußte aber üble Rache der Städter erdulden.
Wenn sich überhaupt das bürgerliche Selbstbewußtsein gegenüber
dem Adel kräftig äußerte, so bewahrte dieser dennoch seinen
gesellschaftlichen Vorrang, und manch reicher Bürger strebte schon
damals nach dem Adel, während der Ritter seinerseits reiche
bürgerliche Heiraten nicht verschmähte. Im kolonialen Osten
bestand andererseits damals noch nur ein sehr geringer Gegensatz
zwischen dem verbauerten oder handeltreibenden Junker und dem
Städter.
Mit dem Bürgertum war eine neue große Schicht des Volkes
mündig und für die Gesamtheit mit von bestimmendem Einfluß
geworden. Vieles, was eine höhere und freiere Kultur modernen
Geistes bedingte, entwickelte sich mit dem Eintritt des Bürgertums in
die Geschichte. Zunächst darf man freilich dessen kulturelle
Bedeutung nicht überschätzen. Ausgangspunkt und Grundlage der
Entwicklung sind rein wirtschaftlich. Der Kern der Sache ist, daß das
Bürgertum der Träger der wiederauflebenden Geldwirtschaft wurde,
die einst in Mittel- und Westeuropa mit der Germanenherrschaft
zusammengebrochen war und nun infolge der Berührungen mit dem
Orient und der entsprechenden Ausbreitung des Handelsgeistes
zunächst in Italien, dann in Frankreich sich wieder einbürgerte und
schließlich auch den deutschen Westen, zum Teil schon vor dem 12.
Jahrhundert, beeinflußte. Mit dem städtischen Wesen, mit der Rolle
des Handels vor allem mußte diese Wirtschaftsform von selbst
kommen und die versagende Naturalwirtschaft überwinden.
Während aber in Frankreich und England, wohl in Anknüpfung an
die kirchliche Verwaltung und andere, noch nicht genügend geklärte
Einflüsse, vor allem aber auf die städtische Entwicklung gestützt, die
Zentralgewalt mit und seit den Kreuzzügen eine geldwirtschaftliche
Verwaltung einzurichten begann, waren es in Deutschland die
Landesherren, deren zunächst im 13. Jahrhundert aufblühende
Verwaltung (s. S. 106) sich der Geldwirtschaft anpaßte. Steuern,
Zölle und sonstige Einnahmen brachten Geld, und die Ausgaben für
den höfischen Prunk wie für das neue Beamtentum und das
aufkommende Söldnerheer waren wieder größtenteils in Geld zu
leisten. Vor allem entwickelten aber dann – der deutsche Orden ist
übrigens auch hervorgetreten – eben die Städte die neue
Wirtschaftsform, stärker schon im 13., ganz freilich erst im 15.
Jahrhundert. Diese Geldwirtschaft führte eine höhere materielle
Kultur herbei, eine gesteigerte Lebenshaltung, mit der die adlige und
z. T. selbst die fürstliche nicht wetteifern konnte, eine größere
Genußsucht, eine Neigung zum Luxus und damit wieder eine
Förderung der künstlerischen Lebensverschönerung, eine Blüte
bestimmter, auf diesem Boden gedeihender Künste. Man kam ferner,
wie gesagt, zu einer praktisch organisierten Verwaltung, zur
Ausbildung der indirekten Steuern, zu einer in alle Einzelheiten
eingreifenden inneren Polizeigesetzgebung, zur Ausbildung des
Verantwortlichkeitsgefühls. Weiter ergaben sich eine größere
Beweglichkeit und geistige Regsamkeit – von der Fürsorge für die
Schulen werden wir noch (S. 143 f.) hören –, eine individuellere
Lebensauffassung, wie sich überhaupt mit den praktischen, realen,
wirtschaftlichen Interessen und der Erweiterung des Gesichtskreises
wie schon mit dem Berechnen eine stärkere Übung des Verstandes,
ebenso aber eine größere Abneigung gegen die asketische
Weltanschauung und gegen kirchliche Bevormundung verband –
kurz man gelangte zu den Elementen einer wirklichen Laienkultur.
Aber alles das entwickelte sich doch nicht sogleich und nicht
überall, und man darf andere Züge nicht übersehen. So eifrig man
sich den neuen, rasch hervortretenden Erfordernissen des wirklichen
Lebens zuwandte: großzügig war der Geist dieses Bürgertums
durchaus nicht, eher engherzig-egoistisch. Es liegt das daran, daß
den Kern des Bürgertums schon durch ihre Zahl die Handwerker
ausmachten. Zum Teil, vor allem in Süddeutschland, blieb überhaupt
das Gewerbe ein wichtigerer Faktor als der Handel. Was die
Handwerker selbst erzeugten, durften die Kaufleute nicht einführen.
Andererseits hatte der Handel die Aufgabe, für die Rohstoffe zu
sorgen, die eben das Handwerk brauchte. Der bürgerliche Geist
deckt sich zum Teil mit dem Geist der Zunft. Diese hat die
Handwerker wirtschaftlich, persönlich und sittlich gehoben, aber je
länger je mehr auch einen kleinlichen, dem Wettbewerb und der
freien Betätigung des begabten Individuums, schließlich überhaupt
dem Fortschritt feindlichen Charakter gezeigt. Die Zunft bedeutete
für das gewerbliche Leben etwas Ähnliches wie die
Markgenossenschaft für das landwirtschaftliche. Zu dieser,
Sicherung und Berechtigung gewährenden Zunftform strebten auch
die neu entstehenden Gewerbe mit allen Mitteln hin. Mit
genossenschaftlichem Zwang sorgte die Zunft wie die
Markgenossenschaft für gleichmäßige Erzeugungsbedingungen und
so für das Wohl aller; mehr noch als jene förderte sie die
Wertschätzung und die Güte der persönlichen Arbeit, die als
gewerbliche ja technisch schwieriger war als die bäuerliche, und
erzog den einzelnen durch bestimmten Lehrgang für seinen Beruf.
Auch das Selbstgefühl ihrer Glieder stärkte sich eben durch den
Stolz auf das durch Überlieferung und Aufsicht gesicherte Können,
auf die »Kunst«, zugleich freilich durch die Teilnahme an der
Stadtverwaltung und Stadtverteidigung. Höchst wertvoll in der noch
immer leidenschaftlichen und ungebundenen Zeit war wie der Zwang
an sich, so besonders die streng formalistische und zeremonielle Art
des Zusammenlebens und der Verhandlungen, die einerseits eines
poetischen Zuges nicht entbehrte, andererseits aber, wie ja schon
die ästhetisch-gesellschaftlichen Regeln des Rittertums, die
unentbehrliche »Zucht« dem einzelnen einprägen sollte. Und weiter
hat dieser Handwerkergeist durch seine scharfen Ansprüche an die
äußere »Ehrbarkeit«, an ehrliche, deutsche Herkunft, freie Geburt
und sittliche Unbescholtenheit, durch die Anerkennung allein des
Erwerbs mittelst tüchtiger Arbeit die Grundlage zu den bürgerlichen
Anschauungen über Ehre und Rechtlichkeit gelegt, die natürlich zum
Teil durch die kirchliche Ethik beeinflußt waren. Freieren
Anschauungen war dieser Geist eigentlich unzugänglich, und, wie
die Zunft, die in mittleren Zeiten zunächst zur Blüte des Gewerbes,
ebenso wie die Markgenossenschaft zu der der Landwirtschaft
beitrug, bei fortschreitender Entwicklung fast so wie jene durch die
Ausschaltung der freien Beweglichkeit Rückständigkeit und
Erstarrung herbeiführte, so erhielten auch die sittlichen
Anschauungen bald etwas Starres. Freilich war bei der
zunehmenden Unsittlichkeit und Genußsucht das Dringen der
Handwerker auf Ehrbarkeit ein gewisses Gegengewicht gegen die
allgemeine Laxheit und beeinflußte auch die Stadtverwaltungen.
Auf sittlich-kirchlichen Anschauungen beruhte z. T. auch die
Gegnerschaft der Handwerker gegen den entwickelten Handel, vor
allem gegen den spekulativen, nicht gegen den Handel überhaupt.
Denn sie selbst verkauften ja auch, und keineswegs waren sie den
Krämern feindlich. Wie sie grundsätzlich bei allen Zunftgenossen
gleichen Wohlstand, aber bei keinem Reichtum erzielen wollten, so
war ihnen der rasche Gewinn des Kaufmanns ein Dorn im Auge.
Aber dieser vor allem auch von der Kirche (s. S. 134) und besonders
vom Adel mißachtete Kaufmann war nun doch ein sehr wichtiges
Element des städtischen Lebens, spielte durch seinen Reichtum oft
die führende Rolle und bildete das Patriziat. Der Handel, einerseits
der nunmehr (s. S. 101) vor allem an die Verbindung mit Italien
geknüpfte oberdeutsche, andererseits der hansische, war es ja
doch, der den eigentlichen Glanz der führenden Städte, Nürnbergs,
Augsburgs, Ulms, Frankfurts, Kölns, Lübecks u. a., begründete. Er
bestimmte auch vielfach ihre Politik, und namentlich seit Ausgang
des Mittelalters führte der Aufschwung des Handels auch ein
mächtiges Zuströmen der Bürger zum Beruf des Kaufmanns herbei.
Aber wenn nun bei dieser Klasse des Bürgertums zweifellos ein
kühner Unternehmungsgeist, ein weiter Blick in die Ferne, dessen ja
auch der Handwerker infolge seines Wanderns als Geselle nicht
ganz entbehrte, und eine große Tatkraft hervortreten, das Bürgerlich-