Beginning gRPC with ASP.NET Core 6: Build Applications using ASP.NET Core Razor Pages, Angular, and Best Practices in .NET 6 1st Edition Anthony Giretti 2024 Scribd Download
Beginning gRPC with ASP.NET Core 6: Build Applications using ASP.NET Core Razor Pages, Angular, and Best Practices in .NET 6 1st Edition Anthony Giretti 2024 Scribd Download
com
OR CLICK HERE
DOWLOAD NOW
https://ebookmeta.com/product/asp-net-core-razor-pages-in-action-1st-
edition-mike-brind/
ebookmeta.com
https://ebookmeta.com/product/annual-review-of-gerontology-and-
geriatrics-volume-39-2019-154th-edition-roland-j-thorpe-jr-phd/
ebookmeta.com
The Material Culture of Basketry Practice Skill and
Embodied Knowledge 1st Edition Stephanie Bunn
https://ebookmeta.com/product/the-material-culture-of-basketry-
practice-skill-and-embodied-knowledge-1st-edition-stephanie-bunn/
ebookmeta.com
https://ebookmeta.com/product/mermaid-origin-of-species-heather-renee/
ebookmeta.com
https://ebookmeta.com/product/a-dead-cousin-jessica-huntinton-desert-
cities-cozy-mystery-05-anna-celeste-burke-et-el/
ebookmeta.com
https://ebookmeta.com/product/spice-of-life-a-cuckolding-story-1st-
edition-casey-brooks/
ebookmeta.com
https://ebookmeta.com/product/the-perfect-crimes-of-marian-hayes-
london-highwaymen-02-cat-sebastian-et-el/
ebookmeta.com
Adorn Where it ALL started Gone with The Rift 1 1st
Edition Jeanette Lynn
https://ebookmeta.com/product/adorn-where-it-all-started-gone-with-
the-rift-1-1st-edition-jeanette-lynn/
ebookmeta.com
Beginning gRPC
with ASP.NET Core 6
Build Applications using ASP.NET
Core Razor Pages, Angular,
and Best Practices in .NET 6
—
Anthony Giretti
Beginning gRPC with
ASP.NET Core 6
Build Applications using ASP.NET
Core Razor Pages, Angular, and Best
Practices in .NET 6
Anthony Giretti
Beginning gRPC with ASP.NET Core 6: Build Applications using ASP.NET Core Razor
Pages, Angular, and Best Practices in .NET 6
Anthony Giretti
La Salle, QC, Canada
iii
Table of Contents
iv
Table of Contents
v
Table of Contents
Chapter 9: Import and Display Data with ASP.NET Core Razor Pages, Hosted
Services, and gRPC����������������������������������������������������������������������������� 299
Scenario Explanation���������������������������������������������������������������������������������������������������������������� 300
Create and Layer the ASP.NET Core gRPC Application�������������������������������������������������������������� 301
Set Up a SQL Server Database and Use Entity Framework Core to Access Data���������������������� 310
Set Up a SQL Server Database�������������������������������������������������������������������������������������������� 310
Using Entity Framework Core to Access Data��������������������������������������������������������������������� 311
Write the Business Logic and Expose the Country gRPC Microservice������������������������������������ 330
Write the Business Logic into the CountryService.BLL Layer���������������������������������������������� 330
Write the Country gRPC Service������������������������������������������������������������������������������������������ 332
Create and Layer the ASP.NET Core Razor Application�������������������������������������������������������������� 341
Create the Application Skeleton������������������������������������������������������������������������������������������ 342
Define Contracts and Domain Objects��������������������������������������������������������������������������������� 343
Implement the Data Access Layer with the gRPC Client����������������������������������������������������� 348
vi
Table of Contents
Chapter 12: Import and Display Data with Angular 12 and gRPC-web���������������� 419
Introduction to SPAs������������������������������������������������������������������������������������������������������������������ 419
Generate TypeScript Stubs with Protoc������������������������������������������������������������������������������������� 421
Download the Correct Version of Protoc and Protobuf Well-Known Types�������������������������� 422
Download the ts-protoc-gen Plug-in����������������������������������������������������������������������������������� 426
Download Improbable’s gRPC-web Library and Google Protobufs Library�������������������������� 426
Executing the Protoc Command������������������������������������������������������������������������������������������ 426
vii
Table of Contents
Index��������������������������������������������������������������������������������������������������������������������� 481
viii
About the Author
Anthony Giretti is a senior lead software developer at OneOcean in Montreal, Canada.
He is a technical leader and four-time Microsoft MVP award recipient. Anthony
specializes in web technologies (17 years’ experience) and .NET. His expertise in
technology and IT, and a heartfelt desire to share his knowledge, motivates him to dive
into and embrace any web project, complex or otherwise, in order to help developers
achieve their project goals. He invites challenges such as performance constraints, high
availability, and optimization with open arms. He is a certified MCSD who is passionate
about his craft and always game for learning new technologies.
ix
About the Technical Reviewer
Fiodar Sazanavets is an experienced full-stack lead software
engineer who mainly works with the Microsoft software
development stack. The main areas of his expertise include
ASP.NET (Framework and Core), SQL Server, Azure, Docker,
Internet of Things (IoT), microservices architecture, and
various front-end technologies.
Fiodar has built his software engineering experience
while working in a variety of industries, including water
engineering, financial, retail, railway, and defense. He has
played a leading role in various projects and, as well as
building software, his duties have included performing architectural and design tasks.
He has also performed a variety of technical duties on clients’ sites, such as in-house
software development and deployment of both software and IoT hardware.
Fiodar is passionate about teaching other people programming skills. He has
published a number of programming courses on various online platforms.
Fiodar regularly writes about software development on his personal website,
https://scientificprogrammer.net. He has also published a number of articles on
other websites.
xi
Acknowledgments
The completion of this book could not have been possible without the participation and
assistance of many people and I would like to express my special thanks to them.
First, thanks to Camille Viot, my boss, for accommodating me so that I could
overcome this immense challenge.
Next, I would like to thank my friend Dave Brock (Madison, Wisconsin) for both
his moral but technical support; he was a great help when I felt overwhelmed by the
magnitude of the task. I also thank him for reviewing my chapters one by one—many
thanks for his contribution! Thanks also to Damien Vande Kerckhove for his technical
support, which allowed me to adjust the shot when I was not going in the right direction.
He was also an essential asset for ensuring this book was able to see the light of day.
I also thank all my family for their unwavering support. Finally, I would like to thank
a special member of my family that I unfortunately lost recently; he was there every night
next to me when I was writing my lines. Thank you, Ulysse, you helped me so much and
kept me company.
xiii
Introduction
Take a new technological turn with gRPC and ASP.NET Core while discovering .NET 6,
the latest release of the Microsoft .NET platform, and C# 10.
gRPC has become more and more famous because of its performance compared to
JSON/XML APIs. In this book, you’ll discover how to develop ASP.NET Core APIs with
the gRPC specification, and gRPC will no longer be mysterious to you.
After you discover how gRPC works, you’ll learn how to use it to build high-
performance web applications with the best development standards. You’ll use gRPC
with various ASP.NET Core 6 project types such as Razor Pages and minimal APIs. You’ll
also discover gRPC-web and the great mix it does with Angular 12.
For Windows Communication Foundation (WCF) developers, you will learn how to
migrate from WCF to gRPC by comparing the similarities and differences between the
two frameworks.
We’ll also explore using gRPC and gRPC-web with OpenId Connect authentication
and authorization to secure your applications.
Let’s go!
xv
PART I
3
© Anthony Giretti 2022
A. Giretti, Beginning gRPC with ASP.NET Core 6, https://doi.org/10.1007/978-1-4842-8008-9_1
Another Random Document on
Scribd Without Any Related Topics
senkt Wipfel, verzaubert Baum und Bäumchen zu bittenden,
drohenden, fliehenden Menschen- und Tiergestalten.
Am Wetterhäusl vor der Haustür schaufeln die Leute den Weg frei
zum Brunnenhäusl, schaufeln und schaufeln, es schneit und schneit,
bald wird die Haustür am Giebel zum Ausgang.
Kein Holz kann aus dem Wald in die Werkorte geführt werden. Die
Brettmühlen im Dorfe feiern. Aber auch Schnee gibt Brot. Das
Herdfeuer in der Schmiede kommt nimmer zur Ruhe. Gleitschiene
um Gleitschiene muß es für die Schlitten hitzen. Ungeduldig
verlangen die Zuggäule nach den Wintereisen an ihre Hornschuhe.
Dann kommen Männer, vermummt gegen Kälte und Schneesturm,
und holen Hacken und Schaufeln, die der Schmied angriffsfest schuf
zum Kampf gegen Wächten, Wehen und Eis. Auf der Bezirksstraße
schaffen sie um ihren Tagelohn. Über der regsamen Schar streicht
der »Schneevogel« (Goldammer) hin und wieder.
In den stockholzdurchwärmten Stuben schleißen Frauen und
Kinder die Federn der mühsam gezogenen Gans, binden die
gesammelten Reiser zu Besen, vollenden manch kunstvoll Bast- und
Strohgeflecht, schnitzen die Väter Stiele für Hämmer, Rechen und
Karst, biegen den Sensenwurf, schärfen Axt und Säge für
kommende Waldarbeit.
Und draußen dehnt sich die verschneite Weite, glitzert in müder
Wintersonne, schattenbemustert in vollmondheller Frostnacht.
Schneegeborgen träumt der verschüttete Jungwald. Ruhe liegt über
dem Kammland und die Einsamkeit hält Wacht.
Wiegender Boden
In weiten, flachen Mulden, am Grunde mit wasserstauendem Ton
und Lehm gedichtet, sammelten sich die Wasser von Regen und
Schneeschmelze zu kleinen und großen Seen. Sie waren die Augen
der Hochflächen, darinnen gewaltiger Wolkenflug und blauer
Berghimmel ihr Widerbild fanden. Millionen kleinster Lebewesen
schwammen oder schwebten darin, deren verwesende Leiber den
Grund mit Faulschlamm deckten. Da fanden die Wassergräser
nährenden Boden. Bald nisteten die Torfmoose unter ihnen.
Brüderlich verschlangen sie sich zu einem einzigen, unzerreißbaren
Filze. Langsam, unaufhaltsam erblindeten die hellen Augen der
Hochflächen.
Abb. 12. Seemoor mit Nebelflug
In den Mooren werden die Flüsse geboren, die zur Elbe rinnen
oder in kurzem Lauf den Südsteilhang hinabspringen. Oft nur wenige
Minuten voneinander getrennt sind die Quellböden zweier
Wasseradern, die von hier in entgegengesetzter Talfahrt die Tiefe
suchen. Aus den benachbarten Moorgründen am Keiblerberg fließt
nach Nordwesten die Gottleuba, nach Südosten der
Leichengrundbach ab. Ja, mitunter laufen die Wässer aus gleichem
Quelland nach Norden und Süden fort. Dies geschieht beim Moor
östlich von Streckenwalde, das vom Nitschgrundbach nach Norden,
vom Tellnitzbach nach Süden entwässert wird, und der Moorboden
nordöstlich von Ebersdorf schickt sowohl zur Elbe wie zur Eger
einen Sernitzbach. Aus den Moorgründen zwischen Neustadt und
Willersdorf sickern die Wilde Weißeritz und die Flöha. Unzählbar
namenlose Gräben füllen die Moorwässer.
Urland sind die Kammoore. Aber selten blieb eines von ihnen
unberührt von Menschenhand. Hacke und Spaten haben schon arg
gehaust. Ein Fuder schwarzbrauner Boden wird täglich aus der
»Moorbodengrube« ins Theresienbad nach Eichwald gefahren, und
täglich kommen zwei Fuhrwerke zum »Seemoor«, um dies Urland
zum heilkräftigen Bad nach Teplitz zu holen. Drei Meter hoch ragt die
Abstichwand, ohne damit die ganze Mächtigkeit des Moores
anzudeuten.
Um kargen Lohn steht die Mutter aus dem entfernten Hochdorf auf
dem nassen Grund. Vom Morgen bis zum Spätnachmittag hackt sie
an der Moorwand. Acht Kronen, sind zehn Groschen, bringt das
mühevolle Tagewerk.
Zu Torfstreu wandelten die Neustädter ihren Moorboden. Seit
Jahreslauf ruhen sie von dieser Arbeit. Der Sturm stürzte die leeren
Horden, darauf Tausende und Abertausende Moorziegeln im Winde
vertrockneten.
Hebst du ein Stück Polster in die Höhe, so kommt dir ein Gewirr
blätterloser brauner Stengel vors Auge. Eine noch dunkler gefärbte
Masse lagert darunter. Das ist Torf, aus den Stengeln geworden, die
aus Mangel an Luft und Licht abstarben. Das saure Moorwasser ließ
sie nicht vollkommen verwesen. An der Spitze wächst das Torfmoos
unaufhörlich weiter. Jungwerden am Spitzentrieb, Sterben in den
unteren Teilen, das ist sein Lebenslauf. Und nach jedem vierten
Blättchen an jedem seitlichen Ästchen setzt sich ein neues
Zweigbüschel an. Dessen Sprossen gabeln sich wieder. So breitet
sich in endlosem Fortgang Geschlecht neben Geschlecht.
Einen Heidestreifen durchschreitest du beim Gang zum Moor,
durchzogen von Rinnsalen, die das Moor entwässern. Dann betrittst
du den Boden, den noch keine Menschenhand bändigte, kein
schollenstürzender Pflug wendete.
Wenn Wochen hindurch die Mittsommersonne über dem Urboden
scheint, dann gibt er dem Fuße sicheren Grund. All die kleinen,
flachen Wassertümpel verdunsten: Überall schwarze, rissige,
brüchige Erdflecken. Dann strecke dich zur Rast auf das Heidekraut,
pflücke mit lässiger Bewegung die Trunkelbeere, beschaue die
purpurnen Moosbeerblütchen und die zierlichen Blättchen der
Krähenbeere.
Im »Seemoor« verträume die Mittagsstunde zwischen den
niederkauernden, sich bückenden, knienden, schleichenden
Gestalten. Im weichen Grund sanken die Sumpfkiefern schief. Ihre
Lichtstrebigkeit half die krummen Stämme formen. Ja, wenn du im
Südteil dieses Moores weilst, darfst du getrost sagen: Hier schaue
ich das urhafteste Krummholzmoor vom östlichen Erzgebirge.
Abb. 22. Inneres der Johanniskirche in Fleyh. 1653 unter dem Richter Kaspar
Panzer von den Einwohnern aus Holz erbaut
Sehnend Erinnern
Immer wieder ziehts mich hin auf die Kammweiten, wo der
Wetterkräfte Spuren jedem Blicke eigen sind, wo dürftig Ackerland
mit jungfräulichem Boden raint, wo stille Kämpfer um deutsche Art,
ausgesöhnt mit ihrer kargen Heimat, wurzelfest die väterliche
Scholle hüten, wo kleiner Leute Kunst und Glaube herbe Einsamkeit
beseelt.
Vogelkundliches aus alten
sächsischen Chroniken
Von Prof. Dr. Bernh. Hoffmann
Eine der hervorragendsten Chroniken unseres engeren
Vaterlandes ist das Leipziger Geschichts-Buch (von M. Joh. Vogeln
in Leipzig), das 1714 erschienen ist und »in welchem die meisten
merckwürdigsten Geschichte und geschehene Veränderungen, die
in und bey belobter Stadt und Gegend – – – von Anno 661 nach
Christi Geburth an, biß in das 1714. Jahr, von Tage zu Tage sich
begeben haben, enthalten sind«. Es heißt da u. a.: »Umb Philippi
Jacobi 1517[1] sind seltzame Vögel / so unbekandt / umb Leipzig
gesehen und gefangen worden / an der Grösse wie die Schwalben /
mit langen Schnäbeln / der Obertheil am Kopff / Hals und Rücken
war dunkelbraun / die Flügel dunkelblau / der Leib schwartz / die
Kehle gelbe / hatten kurtze Füsse / und thäten denen Bienen und
Fischen grossen Schaden.« Es kann kein Zweifel darüber
herrschen, daß wir es hier – obgleich die Beschreibung besonders
betreffs der Unterseite nicht ganz stimmt – mit sogenannten
Europäischen Bienenfressern (Merops apiaster L) zu tun haben.
Auch in ihren Lebensgewohnheiten ähneln diese Vögel den
Schwalben, sofern sie wie diese andauernd in den Lüften
herumjagen und Insekten fangen. Mit Vorliebe vertilgen sie freilich
Wespen, Hummeln, Bienen usw., die sie mitsamt dem Stachel
hinunterschlucken[2]. Meist halten sie in kleinen oder größeren
Scharen zusammen und bauen ihre Nester in steile Flußufer oder
andere erdige Wände in Gestalt langer Röhren oft ein bis zwei Meter
weit in das Erdreich hinein, wodurch sie an Uferschwalben und
Eisvögel erinnern. Die Bienenfresser bewohnen hauptsächlich Süd-
Europa, Nordafrika, sowie Mittel- und Südasien; auf dem Herbstzuge
wandern sie bis ins Kapland. In Sachsen ist diese Vogelart nur
gelegentlich und verhältnismäßig selten zu Gaste. Vielleicht, daß
besonders günstiges Wetter (Föhnstimmung über Mitteleuropa) sie
dann und wann einmal veranlaßt, im Frühjahr die Rückwanderung
aus dem fernen Süden über die Alpen bis zu uns herein
auszudehnen. Auf alle Fälle hat das mehrzählige plötzliche
Erscheinen von Bienenfressern in der Umgegend von Leipzig
verdient, daß es in obiger Chronik verzeichnet wurde[3].
In einer Frankenberger Chronik vom Archidiakono C. A. Bahn,
erschienen im Jahre 1755, ist weiterhin folgendes zu lesen: »Anno
1679, den 9. Dezember, haben sich in Frankenberg zwei frembde
und unbekannte Vögel auf die Kirche, hernach aufs Rathhaus und
dann auf den Markt gesetzet. Sie hatten die Gestalt einer Endten,
schneeweise Köpffe und weise Flügel; auf dem Rücken, am Halse
und Bauche waren sie schwartz, und hatten lange grüne Schwäntze.
Später sind sie auf und davongeflogen.« Diese Mitteilung ist deshalb
von Bedeutung, weil es sich darin, trotz der etwas unzutreffenden
Beschreibung der Vögel, höchstwahrscheinlich um Eisenten (Nyroca
hyemalis L) handelt, welche bei uns nur als sehr seltene Wintergäste
bekannt sind. Ihre Heimat ist der hohe Norden beider Erdhälften. Sie
wandern (nach Reichenow) im Winter bis nach Süd-Europa und dem
Kaspischen Meere, in Amerika bis Florida und Kalifornien. Jedenfalls
sind die erwähnten Stücke sehr ermüdet gewesen und haben erst
nach einiger Zeit des Ausruhens, wozu sie sich freilich recht
ungewohnte Plätze ausgesucht haben, die Wanderung fortgesetzt,
die sie übrigens an sich schon sehr spät angetreten zu haben
scheinen[4].
An einer anderen Stelle derselben Chronik heißt es: »In diesem
Jahre (1706) im Monat Oktober entstund in Dittersbach des Nachts
eine große Feuersbrunst. Bey derselbigen versammelten sich wilde
Enten, wilde Gänse, wilde Tauben, Fischreiher, Schnepffen, Zippen,
Droßeln, Finken, Quäcker[5], Kybitzen, Sperber, Eulen, Lerchen,
Rothkehlchen; darzu kamen gegen Morgen Raben und Krähen und
führten ein gräßliches Geschrey. Diese Vögel flogen ums Feuer
herum, viele verbrannten, viele wurden von den Leuten gefangen,«
usw. – Wir können mit großer Sicherheit annehmen, daß die meisten
der genannten Vögel auf ihrem Herbstzuge nach dem warmen
Süden waren und zwar hauptsächlich wohl als Nachtwanderer.