The .NET News Daily Issue #73

Feel like sharing?

:root {–wt-primary-color: #030712;–wt-text-on-primary-color: #F9FAFB;–wt-secondary-color: #F9FAFB;–wt-text-on-secondary-color: #030712;–wt-tertiary-color: #FFFFFF;–wt-text-on-tertiary-color: #222222;–wt-background-color: #F9FAFB;–wt-text-on-background-color: #030712;–wt-subscribe-background-color: #FFFFFF;–wt-text-on-subscribe-background-color: #030712;–wt-header-font: “Poppins”, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, “Segoe UI”, Roboto,”Helvetica Neue”, Arial, “Noto Sans”, sans-serif, “Apple Color Emoji”, “Segoe UI Emoji”, “Segoe UI Symbol”, “Noto Color Emoji”;–wt-body-font: “Poppins”, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, “Segoe UI”, Roboto, “Helvetica Neue”, Arial, “Noto Sans”, sans-serif, “Apple Color Emoji”, “Segoe UI Emoji”, “Segoe UI Symbol”, “Noto Color Emoji”;–wt-button-font: “Poppins”, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, “Segoe UI”, Roboto, “Helvetica Neue”, Arial, “Noto Sans”, sans-serif, “Apple Color Emoji”, “Segoe UI Emoji”, “Segoe UI Symbol”, “Noto Color Emoji”;–wt-border-radius: 8px}.bg-wt-primary { background-color: var(–wt-primary-color); }.text-wt-primary { color: var(–wt-primary-color); }.border-wt-primary { border-color: var(–wt-primary-color); }.bg-wt-text-on-primary { background-color: var(–wt-text-on-primary-color); }.text-wt-text-on-primary { color: var(–wt-text-on-primary-color); }.border-wt-text-on-primary { border-color: var(–wt-text-on-primary-color); }.bg-wt-secondary { background-color: var(–wt-secondary-color); }.text-wt-secondary { color: var(–wt-secondary-color); }.border-wt-secondary { border-color: var(–wt-secondary-color); }.bg-wt-text-on-secondary { background-color: var(–wt-text-on-secondary-color); }.text-wt-text-on-secondary { color: var(–wt-text-on-secondary-color); }.border-wt-text-on-secondary { border-color: var(–wt-text-on-secondary-color); }.bg-wt-tertiary { background-color: var(–wt-tertiary-color); }.text-wt-tertiary { color: var(–wt-tertiary-color); }.border-wt-tertiary { border-color: var(–wt-tertiary-color); }.bg-wt-text-on-tertiary { background-color: var(–wt-text-on-tertiary-color); }.text-wt-text-on-tertiary { color: var(–wt-text-on-tertiary-color); }.border-wt-text-on-tertiary { border-color: var(–wt-text-on-tertiary-color); }.bg-wt-background { background-color: var(–wt-background-color); }.text-wt-background { color: var(–wt-background-color); }.border-wt-background { border-color: var(–wt-background-color); }.bg-wt-text-on-background { background-color: var(–wt-text-on-background-color); }.text-wt-text-on-background { color: var(–wt-text-on-background-color); }.border-wt-text-on-background { border-color: var(–wt-text-on-background-color); }.bg-wt-subscribe-background { background-color: var(–wt-subscribe-background-color); }.text-wt-subscribe-background { color: var(–wt-subscribe-background-color); }.border-wt-subscribe-background { border-color: var(–wt-subscribe-background-color); }.bg-wt-text-on-subscribe-background { background-color: var(–wt-text-on-subscribe-background-color); }.text-wt-text-on-subscribe-background { color: var(–wt-text-on-subscribe-background-color); }.border-wt-text-on-subscribe-background { border-color: var(–wt-text-on-subscribe-background-color); }.rounded-wt { border-radius: var(–wt-border-radius); }.wt-header-font { font-family: var(–wt-header-font); }.wt-body-font { font-family: var(–wt-body-font); }.wt-button-font { font-family: var(–wt-button-font); }input:focus { –tw-ring-color: transparent !important; }li a { word-break: break-word; }@media only screen and (max-width:667px) {.mob-stack {display: block !important;width: 100% !important;}.mob-w-full {width: 100% !important;}}@font-face {font-family: ‘Roboto’;font-style: normal;font-weight: 400;src: url(‘https://fonts.gstatic.com/s/roboto/v29/KFOmCnqEu92Fr1Mu4mxKKTU1Kg.woff2’) format(‘woff2’);}@font-face {font-family: ‘Roboto’;font-style: normal;font-weight: 700;src: url(‘https://fonts.gstatic.com/s/roboto/v29/KFOlCnqEu92Fr1MmWUlfBBc4AMP6lQ.woff2’) format(‘woff2’);}@font-face {font-family: ‘Roboto’;font-style: italic;font-weight: 400;src: url(‘https://fonts.gstatic.com/s/roboto/v29/KFOkCnqEu92Fr1Mu51xIIzIXKMny.woff2’) format(‘woff2’);}@font-face {font-family: ‘Roboto’;font-style: italic;font-weight: 700;src: url(‘https://fonts.gstatic.com/s/roboto/v29/KFOjCnqEu92Fr1Mu51TzBic6CsTYl4BO.woff2’) format(‘woff2’);}@font-face {font-family: ‘Open Sans’;font-style: normal;font-weight: 400;src: url(‘https://fonts.gstatic.com/s/opensans/v28/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTS-mu0SC55I.woff2’) format(‘woff2’);}@font-face {font-family: ‘Open Sans’;font-style: normal;font-weight: 700;src: url(‘https://fonts.gstatic.com/s/opensans/v28/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTS-mu0SC55I.woff2’) format(‘woff2’);}@font-face {font-family: ‘Open Sans’;font-style: italic;font-weight: 400;src: url(‘https://fonts.gstatic.com/s/opensans/v28/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWuU6FxZCJgg.woff2’) format(‘woff2’);}@font-face {font-family: ‘Open Sans’;font-style: italic;font-weight: 700;src: url(‘https://fonts.gstatic.com/s/opensans/v28/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWuU6FxZCJgg.woff2’) format(‘woff2′);}.table-base, .table-c, .table-h { border: 1px solid #C0C0C0; }.table-c { padding:5px; background-color:#FFFFFF; }.table-c p { color: #2D2D2D; font-family:’Open Sans’,’Segoe UI’,’Apple SD Gothic Neo’,’Lucida Grande’,’Lucida Sans Unicode’,sans-serif !important; overflow-wrap: break-word; }.table-h { padding:5px; background-color:#F1F1F1; }.table-h p { color: #2A2A2A; font-family:’Open Sans’,’Segoe UI’,’Apple SD Gothic Neo’,’Lucida Grande’,’Lucida Sans Unicode’,sans-serif !important; overflow-wrap: break-word; }
.bh__byline_wrapper {font-size: .875rem;line-height: 1.25rem;vertical-align: middle;justify-content: space-between;display: block;}.bh__byline_social_wrapper {display: flex;margin-top: 0.5rem;align-items: center;}.bh__byline_social_wrapper > * + * {margin-left: 1rem;}@media (min-width: 768px) {.bh__byline_wrapper {display: flex;}.bh__byline_social_wrapper {margin-top: 0rem;}}
p span[style*=”font-size”] { line-height: 1.6; }

Hey there, .NET community! As we approach the end of the week, the ecosystem continues to evolve with exciting developments. Today’s newsletter highlights some clever solutions to common challenges, along with updates that might influence your architectural decisions. Ready to discover something new?

Today’s Articles

.generic-embed–root {padding: 10px 19px 10px 19px;}.generic-embed–root:hover {filter: brightness(90%)}.generic-embed–root a {text-decoration: none !important;}.generic-embed {background-color: #FFFFFF;border-radius: 10px;border: solid 2px #F1F1F1;}.generic-embed–wrapper-reverse {min-height: 75px;border-collapse: collapse;width: 100%;display: flex;}.generic-embed–title {color: #2D2D2D;font-size: 15px;font-weight: bold;padding-bottom: 8px;}.generic-embed–description {color: #2D2D2D;font-size: 15px;padding-bottom: 8px;}.generic-embed–link {color: #3a9bf3;font-size: 12px;word-break: break-word;}@media only screen and (max-width: 640px) {.generic-embed–image {width: 100% !important;padding: 0px 0px 12px 0px !important;}.generic-embed–wrapper-reverse {flex-direction: column-reverse;}}

.generic-embed–root {padding: 10px 19px 10px 19px;}.generic-embed–root:hover {filter: brightness(90%)}.generic-embed–root a {text-decoration: none !important;}.generic-embed {background-color: #FFFFFF;border-radius: 10px;border: solid 2px #F1F1F1;}.generic-embed–wrapper-reverse {min-height: 75px;border-collapse: collapse;width: 100%;display: flex;}.generic-embed–title {color: #2D2D2D;font-size: 15px;font-weight: bold;padding-bottom: 8px;}.generic-embed–description {color: #2D2D2D;font-size: 15px;padding-bottom: 8px;}.generic-embed–link {color: #3a9bf3;font-size: 12px;word-break: break-word;}@media only screen and (max-width: 640px) {.generic-embed–image {width: 100% !important;padding: 0px 0px 12px 0px !important;}.generic-embed–wrapper-reverse {flex-direction: column-reverse;}}

.generic-embed–root {padding: 10px 19px 10px 19px;}.generic-embed–root:hover {filter: brightness(90%)}.generic-embed–root a {text-decoration: none !important;}.generic-embed {background-color: #FFFFFF;border-radius: 10px;border: solid 2px #F1F1F1;}.generic-embed–wrapper-reverse {min-height: 75px;border-collapse: collapse;width: 100%;display: flex;}.generic-embed–title {color: #2D2D2D;font-size: 15px;font-weight: bold;padding-bottom: 8px;}.generic-embed–description {color: #2D2D2D;font-size: 15px;padding-bottom: 8px;}.generic-embed–link {color: #3a9bf3;font-size: 12px;word-break: break-word;}@media only screen and (max-width: 640px) {.generic-embed–image {width: 100% !important;padding: 0px 0px 12px 0px !important;}.generic-embed–wrapper-reverse {flex-direction: column-reverse;}}

.generic-embed–root {padding: 10px 19px 10px 19px;}.generic-embed–root:hover {filter: brightness(90%)}.generic-embed–root a {text-decoration: none !important;}.generic-embed {background-color: #FFFFFF;border-radius: 10px;border: solid 2px #F1F1F1;}.generic-embed–wrapper-reverse {min-height: 75px;border-collapse: collapse;width: 100%;display: flex;}.generic-embed–title {color: #2D2D2D;font-size: 15px;font-weight: bold;padding-bottom: 8px;}.generic-embed–description {color: #2D2D2D;font-size: 15px;padding-bottom: 8px;}.generic-embed–link {color: #3a9bf3;font-size: 12px;word-break: break-word;}@media only screen and (max-width: 640px) {.generic-embed–image {width: 100% !important;padding: 0px 0px 12px 0px !important;}.generic-embed–wrapper-reverse {flex-direction: column-reverse;}}

.generic-embed–root {padding: 10px 19px 10px 19px;}.generic-embed–root:hover {filter: brightness(90%)}.generic-embed–root a {text-decoration: none !important;}.generic-embed {background-color: #FFFFFF;border-radius: 10px;border: solid 2px #F1F1F1;}.generic-embed–wrapper-reverse {min-height: 75px;border-collapse: collapse;width: 100%;display: flex;}.generic-embed–title {color: #2D2D2D;font-size: 15px;font-weight: bold;padding-bottom: 8px;}.generic-embed–description {color: #2D2D2D;font-size: 15px;padding-bottom: 8px;}.generic-embed–link {color: #3a9bf3;font-size: 12px;word-break: break-word;}@media only screen and (max-width: 640px) {.generic-embed–image {width: 100% !important;padding: 0px 0px 12px 0px !important;}.generic-embed–wrapper-reverse {flex-direction: column-reverse;}}

.generic-embed–root {padding: 10px 19px 10px 19px;}.generic-embed–root:hover {filter: brightness(90%)}.generic-embed–root a {text-decoration: none !important;}.generic-embed {background-color: #FFFFFF;border-radius: 10px;border: solid 2px #F1F1F1;}.generic-embed–wrapper-reverse {min-height: 75px;border-collapse: collapse;width: 100%;display: flex;}.generic-embed–title {color: #2D2D2D;font-size: 15px;font-weight: bold;padding-bottom: 8px;}.generic-embed–description {color: #2D2D2D;font-size: 15px;padding-bottom: 8px;}.generic-embed–link {color: #3a9bf3;font-size: 12px;word-break: break-word;}@media only screen and (max-width: 640px) {.generic-embed–image {width: 100% !important;padding: 0px 0px 12px 0px !important;}.generic-embed–wrapper-reverse {flex-direction: column-reverse;}}

.generic-embed–root {padding: 10px 19px 10px 19px;}.generic-embed–root:hover {filter: brightness(90%)}.generic-embed–root a {text-decoration: none !important;}.generic-embed {background-color: #FFFFFF;border-radius: 10px;border: solid 2px #F1F1F1;}.generic-embed–wrapper-reverse {min-height: 75px;border-collapse: collapse;width: 100%;display: flex;}.generic-embed–title {color: #2D2D2D;font-size: 15px;font-weight: bold;padding-bottom: 8px;}.generic-embed–description {color: #2D2D2D;font-size: 15px;padding-bottom: 8px;}.generic-embed–link {color: #3a9bf3;font-size: 12px;word-break: break-word;}@media only screen and (max-width: 640px) {.generic-embed–image {width: 100% !important;padding: 0px 0px 12px 0px !important;}.generic-embed–wrapper-reverse {flex-direction: column-reverse;}}

.generic-embed–root {padding: 10px 19px 10px 19px;}.generic-embed–root:hover {filter: brightness(90%)}.generic-embed–root a {text-decoration: none !important;}.generic-embed {background-color: #FFFFFF;border-radius: 10px;border: solid 2px #F1F1F1;}.generic-embed–wrapper-reverse {min-height: 75px;border-collapse: collapse;width: 100%;display: flex;}.generic-embed–title {color: #2D2D2D;font-size: 15px;font-weight: bold;padding-bottom: 8px;}.generic-embed–description {color: #2D2D2D;font-size: 15px;padding-bottom: 8px;}.generic-embed–link {color: #3a9bf3;font-size: 12px;word-break: break-word;}@media only screen and (max-width: 640px) {.generic-embed–image {width: 100% !important;padding: 0px 0px 12px 0px !important;}.generic-embed–wrapper-reverse {flex-direction: column-reverse;}}

.generic-embed–root {padding: 10px 19px 10px 19px;}.generic-embed–root:hover {filter: brightness(90%)}.generic-embed–root a {text-decoration: none !important;}.generic-embed {background-color: #FFFFFF;border-radius: 10px;border: solid 2px #F1F1F1;}.generic-embed–wrapper-reverse {min-height: 75px;border-collapse: collapse;width: 100%;display: flex;}.generic-embed–title {color: #2D2D2D;font-size: 15px;font-weight: bold;padding-bottom: 8px;}.generic-embed–description {color: #2D2D2D;font-size: 15px;padding-bottom: 8px;}.generic-embed–link {color: #3a9bf3;font-size: 12px;word-break: break-word;}@media only screen and (max-width: 640px) {.generic-embed–image {width: 100% !important;padding: 0px 0px 12px 0px !important;}.generic-embed–wrapper-reverse {flex-direction: column-reverse;}}

.generic-embed–root {padding: 10px 19px 10px 19px;}.generic-embed–root:hover {filter: brightness(90%)}.generic-embed–root a {text-decoration: none !important;}.generic-embed {background-color: #FFFFFF;border-radius: 10px;border: solid 2px #F1F1F1;}.generic-embed–wrapper-reverse {min-height: 75px;border-collapse: collapse;width: 100%;display: flex;}.generic-embed–title {color: #2D2D2D;font-size: 15px;font-weight: bold;padding-bottom: 8px;}.generic-embed–description {color: #2D2D2D;font-size: 15px;padding-bottom: 8px;}.generic-embed–link {color: #3a9bf3;font-size: 12px;word-break: break-word;}@media only screen and (max-width: 640px) {.generic-embed–image {width: 100% !important;padding: 0px 0px 12px 0px !important;}.generic-embed–wrapper-reverse {flex-direction: column-reverse;}}

.generic-embed–root {padding: 10px 19px 10px 19px;}.generic-embed–root:hover {filter: brightness(90%)}.generic-embed–root a {text-decoration: none !important;}.generic-embed {background-color: #FFFFFF;border-radius: 10px;border: solid 2px #F1F1F1;}.generic-embed–wrapper-reverse {min-height: 75px;border-collapse: collapse;width: 100%;display: flex;}.generic-embed–title {color: #2D2D2D;font-size: 15px;font-weight: bold;padding-bottom: 8px;}.generic-embed–description {color: #2D2D2D;font-size: 15px;padding-bottom: 8px;}.generic-embed–link {color: #3a9bf3;font-size: 12px;word-break: break-word;}@media only screen and (max-width: 640px) {.generic-embed–image {width: 100% !important;padding: 0px 0px 12px 0px !important;}.generic-embed–wrapper-reverse {flex-direction: column-reverse;}}

.generic-embed–root {padding: 10px 19px 10px 19px;}.generic-embed–root:hover {filter: brightness(90%)}.generic-embed–root a {text-decoration: none !important;}.generic-embed {background-color: #FFFFFF;border-radius: 10px;border: solid 2px #F1F1F1;}.generic-embed–wrapper-reverse {min-height: 75px;border-collapse: collapse;width: 100%;display: flex;}.generic-embed–title {color: #2D2D2D;font-size: 15px;font-weight: bold;padding-bottom: 8px;}.generic-embed–description {color: #2D2D2D;font-size: 15px;padding-bottom: 8px;}.generic-embed–link {color: #3a9bf3;font-size: 12px;word-break: break-word;}@media only screen and (max-width: 640px) {.generic-embed–image {width: 100% !important;padding: 0px 0px 12px 0px !important;}.generic-embed–wrapper-reverse {flex-direction: column-reverse;}}

.generic-embed–root {padding: 10px 19px 10px 19px;}.generic-embed–root:hover {filter: brightness(90%)}.generic-embed–root a {text-decoration: none !important;}.generic-embed {background-color: #FFFFFF;border-radius: 10px;border: solid 2px #F1F1F1;}.generic-embed–wrapper-reverse {min-height: 75px;border-collapse: collapse;width: 100%;display: flex;}.generic-embed–title {color: #2D2D2D;font-size: 15px;font-weight: bold;padding-bottom: 8px;}.generic-embed–description {color: #2D2D2D;font-size: 15px;padding-bottom: 8px;}.generic-embed–link {color: #3a9bf3;font-size: 12px;word-break: break-word;}@media only screen and (max-width: 640px) {.generic-embed–image {width: 100% !important;padding: 0px 0px 12px 0px !important;}.generic-embed–wrapper-reverse {flex-direction: column-reverse;}}

.generic-embed–root {padding: 10px 19px 10px 19px;}.generic-embed–root:hover {filter: brightness(90%)}.generic-embed–root a {text-decoration: none !important;}.generic-embed {background-color: #FFFFFF;border-radius: 10px;border: solid 2px #F1F1F1;}.generic-embed–wrapper-reverse {min-height: 75px;border-collapse: collapse;width: 100%;display: flex;}.generic-embed–title {color: #2D2D2D;font-size: 15px;font-weight: bold;padding-bottom: 8px;}.generic-embed–description {color: #2D2D2D;font-size: 15px;padding-bottom: 8px;}.generic-embed–link {color: #3a9bf3;font-size: 12px;word-break: break-word;}@media only screen and (max-width: 640px) {.generic-embed–image {width: 100% !important;padding: 0px 0px 12px 0px !important;}.generic-embed–wrapper-reverse {flex-direction: column-reverse;}}

.generic-embed–root {padding: 10px 19px 10px 19px;}.generic-embed–root:hover {filter: brightness(90%)}.generic-embed–root a {text-decoration: none !important;}.generic-embed {background-color: #FFFFFF;border-radius: 10px;border: solid 2px #F1F1F1;}.generic-embed–wrapper-reverse {min-height: 75px;border-collapse: collapse;width: 100%;display: flex;}.generic-embed–title {color: #2D2D2D;font-size: 15px;font-weight: bold;padding-bottom: 8px;}.generic-embed–description {color: #2D2D2D;font-size: 15px;padding-bottom: 8px;}.generic-embed–link {color: #3a9bf3;font-size: 12px;word-break: break-word;}@media only screen and (max-width: 640px) {.generic-embed–image {width: 100% !important;padding: 0px 0px 12px 0px !important;}.generic-embed–wrapper-reverse {flex-direction: column-reverse;}}

.generic-embed–root {padding: 10px 19px 10px 19px;}.generic-embed–root:hover {filter: brightness(90%)}.generic-embed–root a {text-decoration: none !important;}.generic-embed {background-color: #FFFFFF;border-radius: 10px;border: solid 2px #F1F1F1;}.generic-embed–wrapper-reverse {min-height: 75px;border-collapse: collapse;width: 100%;display: flex;}.generic-embed–title {color: #2D2D2D;font-size: 15px;font-weight: bold;padding-bottom: 8px;}.generic-embed–description {color: #2D2D2D;font-size: 15px;padding-bottom: 8px;}.generic-embed–link {color: #3a9bf3;font-size: 12px;word-break: break-word;}@media only screen and (max-width: 640px) {.generic-embed–image {width: 100% !important;padding: 0px 0px 12px 0px !important;}.generic-embed–wrapper-reverse {flex-direction: column-reverse;}}

.generic-embed–root {padding: 10px 19px 10px 19px;}.generic-embed–root:hover {filter: brightness(90%)}.generic-embed–root a {text-decoration: none !important;}.generic-embed {background-color: #FFFFFF;border-radius: 10px;border: solid 2px #F1F1F1;}.generic-embed–wrapper-reverse {min-height: 75px;border-collapse: collapse;width: 100%;display: flex;}.generic-embed–title {color: #2D2D2D;font-size: 15px;font-weight: bold;padding-bottom: 8px;}.generic-embed–description {color: #2D2D2D;font-size: 15px;padding-bottom: 8px;}.generic-embed–link {color: #3a9bf3;font-size: 12px;word-break: break-word;}@media only screen and (max-width: 640px) {.generic-embed–image {width: 100% !important;padding: 0px 0px 12px 0px !important;}.generic-embed–wrapper-reverse {flex-direction: column-reverse;}}

.generic-embed–root {padding: 10px 19px 10px 19px;}.generic-embed–root:hover {filter: brightness(90%)}.generic-embed–root a {text-decoration: none !important;}.generic-embed {background-color: #FFFFFF;border-radius: 10px;border: solid 2px #F1F1F1;}.generic-embed–wrapper-reverse {min-height: 75px;border-collapse: collapse;width: 100%;display: flex;}.generic-embed–title {color: #2D2D2D;font-size: 15px;font-weight: bold;padding-bottom: 8px;}.generic-embed–description {color: #2D2D2D;font-size: 15px;padding-bottom: 8px;}.generic-embed–link {color: #3a9bf3;font-size: 12px;word-break: break-word;}@media only screen and (max-width: 640px) {.generic-embed–image {width: 100% !important;padding: 0px 0px 12px 0px !important;}.generic-embed–wrapper-reverse {flex-direction: column-reverse;}}

Subscribe to the .NET Newsletter and never miss another awesome article.

Leave a Reply

Your email address will not be published. Required fields are marked *