﻿<?xml version="1.0" encoding="utf-8"?>
<urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://steven-giesel.com/</loc>
  </url>
  <url>
    <loc>https://steven-giesel.com/archive</loc>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/86620358-bb91-4295-84fc-a1329b2567ae/net-11-performance-edition</loc>
    <lastmod>2026-08-01</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/605274d2-719b-4b1f-b0d5-3ad9001d9b56/adding-static-getter-thanks-to-extensions</loc>
    <lastmod>2026-07-19</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/1cfa82eb-1108-4355-8815-615b094bf9ec/set-loglevel-of-blazor</loc>
    <lastmod>2026-07-12</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/bf118bb2-0ea4-45ef-babb-26f67bfb0523/linkedin-what-a-dumbster-fire</loc>
    <lastmod>2026-07-01</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/495d87ca-61df-4c52-a253-8ba4abc186b7/signals-in-blazor</loc>
    <lastmod>2026-06-20</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/d4401fd0-805a-4703-9d9e-5fe3b57c25ea/ef-core-11-makes-your-split-queries-faster</loc>
    <lastmod>2026-06-08</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/6066abb6-640a-4225-ac33-3f4d5a1a1d16/zstandard-compression-in-net-11</loc>
    <lastmod>2026-05-18</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/00fcb870-6bf7-4f97-824f-8eab1b8838be/backgroundservice-exceptions-now-propagate-in-net-11</loc>
    <lastmod>2026-05-10</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/18a61100-6074-43ac-86ae-573ad66a2c8a/configurationignoreattribute-in-net-11</loc>
    <lastmod>2026-04-26</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/3acc78ff-5ae2-4be3-af7e-62bfcbf3fb6d/source-code-generated-string-enums-with-exhaustion-support</loc>
    <lastmod>2026-04-06</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/9be39ff1-b7fc-4814-abd4-5ea41a07f8d7/records-tostring-and-inheritence</loc>
    <lastmod>2026-03-16</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/5a750fbf-cbf1-44dc-b864-70bedd8a29a9/fulljoin-in-net-11-potentially</loc>
    <lastmod>2026-03-06</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/c193059f-33d5-4332-9b4b-96a5652bb67c/toolhighlight-handy</loc>
    <lastmod>2026-03-02</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/63431000-1192-4210-a85c-5fff00910d93/being-stupid-is-fun-lets-create-long-exception-messages</loc>
    <lastmod>2026-02-23</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/1fb10ed2-df84-4080-b660-72c04a4cc674/new-runtime-async-is-hitting-net-11-part-1</loc>
    <lastmod>2026-02-15</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/441e0a21-9869-49e4-beac-b30bb9f9494c/collection-expression-arguments-in-c-15-are-out</loc>
    <lastmod>2026-02-12</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/ec7526ca-9f43-4e28-b8cf-2bbcd30349ca/net-toolbox-february-update</loc>
    <lastmod>2026-02-10</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/7f6e2ade-b5b9-4de6-a060-281e45b2448e/sometimes-you-just-need-extensions-methods-to-model-your-stuff</loc>
    <lastmod>2026-01-25</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/352fe495-9cc4-4df8-8ad1-a3e26a64185c/collection-expression-arguments-in-c-15</loc>
    <lastmod>2026-01-12</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/043491b9-9d2c-433f-bb9b-1cec5b957083/net-toolbox</loc>
    <lastmod>2026-01-05</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/c3bdad0d-f9eb-4dcf-b650-98ec0f5dd4d4/taskdelay-fails-if-you-wait-longer-than-497-days</loc>
    <lastmod>2025-12-28</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/55dbb67c-cd14-444f-81e8-dec9f5ce1448/one-minute-knowledge-is-toarrayasync-or-tolistasync-faster-for-entity-framework</loc>
    <lastmod>2025-12-15</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/77f3667e-cf86-4e62-b09f-b32c0aaf58cd/github-runners-might-not-be-a-good-benchmark-baseline</loc>
    <lastmod>2025-12-09</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/8f41d316-f6ac-4712-bf11-ea36b7c2f2e6/mime-type-helper-in-net-11</loc>
    <lastmod>2025-12-02</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/d6150b89-a3ef-407e-add2-7afa4a2a8729/using-sortable-uuid-guids-in-entity-framework</loc>
    <lastmod>2025-11-24</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/9c156006-3e54-45b9-8e0c-ea933e005983/no-more-public-partial-class-program-in-net-10</loc>
    <lastmod>2025-11-19</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/63a50c08-ddba-4f23-9ce0-b47917e32875/capturing-console-output-in-xunitv3</loc>
    <lastmod>2025-11-10</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/b8dffa1a-84f7-49a2-9dad-3bf8f7f4e410/arraypool-benchmarks-we-have-a-problem</loc>
    <lastmod>2025-11-03</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/cc2a3f52-9d35-43d2-9687-c276a2de8e07/linkedin-are-you-still-using-new-random-everywhere</loc>
    <lastmod>2025-10-27</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/e89d7156-f3fd-4152-b78a-cb908bc43226/inlining-and-structs-in-c</loc>
    <lastmod>2025-10-20</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/080baaef-27d4-4d98-b0a8-9c3ab96c335e/use-cancellationtokens</loc>
    <lastmod>2025-10-06</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/06cb9eb9-927e-4bc6-a68a-1471288b9609/linkedin-benchmarks-again</loc>
    <lastmod>2025-09-15</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/1af57355-7978-40e6-a0f1-3d0ba2c6e1bc/todictionaryasync-retrieves-the-whole-object-from-the-database-in-entity-framework</loc>
    <lastmod>2025-09-08</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/c0562c02-9073-46f2-8f66-00e4ebd7c9e3/divide-and-conquer-the-database</loc>
    <lastmod>2025-09-01</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/fea0b033-ccf5-4197-b62c-ffd8ca6d79c7/quick-one-difference-between-collection-expressions-and-collection-initializer</loc>
    <lastmod>2025-08-25</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/5d88d808-03ac-431a-82fa-756b59b38a7d/two-more-linq-extensions-in-dotnet-10</loc>
    <lastmod>2025-08-18</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/c6bea409-9e49-4915-8529-8a8a8574ba80/how-to-not-return-all-properties-in-sqlraw</loc>
    <lastmod>2025-08-11</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/f1c14e0f-840c-4dd6-921c-364298a35d6f/disabling-thread-safety-check-in-entity-framework</loc>
    <lastmod>2025-08-04</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/feac44f3-2c6e-4994-80c3-e2a17efbb8f3/using-architecture-tests-for-cancellationtokens-and-sealed-classes</loc>
    <lastmod>2025-07-28</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/2c204a37-1af5-45a4-ac4b-439d2d8a02f0/why-lists-are-not-lowered-to-a-while-loop</loc>
    <lastmod>2025-07-21</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/dd7ab934-c311-45e0-9a04-9a28c624b957/tolistasync-is-fast-again-in-entity-framework-kind-of</loc>
    <lastmod>2025-07-07</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/80a53df4-a867-4202-916c-08e980f02505/adding-test-description-for-datadriven-tests-in-xunit</loc>
    <lastmod>2025-06-30</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/b839cab5-55ad-4fd8-90ca-7799cde8ace0/you-cant-use-switch-expressions-in-blazor-sometimes</loc>
    <lastmod>2025-06-23</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/c518e8d6-54b4-407f-af82-e79e0889bc03/net-10-performance-edition</loc>
    <lastmod>2025-06-16</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/f6ad319b-b095-47a0-91d7-800d30a0e3c2/how-to-get-to-know-the-latest-dotnet-features-the-nerdy-way</loc>
    <lastmod>2025-06-09</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/c624c170-c16c-4414-8506-2ae25ba54df7/why-is-enumerating-over-list-faster-than-ilist</loc>
    <lastmod>2025-06-02</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/53691229-fbb1-48cf-95e5-f586f9800ee1/avoiding-reflection-in-c-in-way-unsafer-ways</loc>
    <lastmod>2025-05-26</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/e2552b7a-293a-4f46-892f-95a0cd677e4d/writing-new-guards-with-extensions-in-c-14</loc>
    <lastmod>2025-05-19</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/ef7e9271-3b8d-4658-988f-b48bbd11e320/clearing-nuget-caches</loc>
    <lastmod>2025-05-12</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/42cfcbfa-8e70-4b42-ba98-f8f2b7715185/does-net-documentation-get-ads-aka-is-copilot-in-the-docs-something-useful</loc>
    <lastmod>2025-05-05</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/58680a06-7870-4a36-8a8a-bf1bf5cf30f1/httpclient-improvements-in-net-10</loc>
    <lastmod>2025-04-28</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/d84875c9-c363-45ac-b716-d0b4047396cf/extensions-get-an-update-in-net-10</loc>
    <lastmod>2025-04-21</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/38a4f1dc-420f-4489-9179-77371a79b9a9/a-custom-404-page-in-blazor-web-apps</loc>
    <lastmod>2025-04-14</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/1534963c-fcf4-427c-847c-6ebfd8c91f31/more-linkedin-tips-dragging-your-whole-database-into-memory</loc>
    <lastmod>2025-04-07</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/91563474-ffe6-4c47-b7ee-fb04b5731a74/c-language-mind-map-v14</loc>
    <lastmod>2025-03-31</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/1b432667-3b2d-4c41-8557-b4c3a3c554d9/solving-problems-you-wouldnt-have-if-you-wouldnt-use-entity-framework</loc>
    <lastmod>2025-03-24</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/a36cc4df-4dce-47e0-b154-9a4a9e4a7a37/typescriptgo-a-10x-faster-typescript-without-net-but-in-go</loc>
    <lastmod>2025-03-17</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/e40aaedc-9e56-491f-9fe5-3bb0b162ae94/systemlinqasync-is-part-of-net-10-linq-for-iasyncenumerable</loc>
    <lastmod>2025-03-10</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/364c43d2-b31e-4377-8001-ac75ce78cdc6/tailwind-v4-with-blazor-it-just-got-easier</loc>
    <lastmod>2025-03-03</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/b6d22649-7fba-488b-b252-31efdb3686c5/c-14-nullconditional-assignment</loc>
    <lastmod>2025-02-24</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/b705be3e-8d80-4de1-aefb-29c9262c49b7/ienumerable-vs-ienumerator-in-c-one-is-2x-faster-linkedin-edition</loc>
    <lastmod>2025-02-17</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/e4720110-d276-4591-adf2-bea2351de6da/managed-postgres-instance-neon</loc>
    <lastmod>2025-02-10</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/00443661-f75b-4694-852b-175b4a10d6c4/linq-mindmap-net-10-edition</loc>
    <lastmod>2025-02-06</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/d67df2e6-b8f7-4fd8-92ba-426e268b5216/validate-that-your-di-container-can-be-created-in-aspnet-core</loc>
    <lastmod>2025-02-03</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/6de02565-a08e-4968-b610-22826582c1f1/when-will-net-framework-retire</loc>
    <lastmod>2025-01-27</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/5fc7cb62-d5ad-4f07-831c-d6c1c6974641/cache-cors-preflight-requests</loc>
    <lastmod>2025-01-20</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/abe1b169-78df-4b0e-a31e-8e274c43549a/announcing-developer-academy</loc>
    <lastmod>2025-01-14</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/48d50101-fa20-4f26-9a59-5c1229302460/equipping-3rd-party-types-with-debugging-capabilities</loc>
    <lastmod>2025-01-13</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/591f2354-a205-4507-bbb2-7d88781e0563/why-is-open-source-important-and-is-it-free</loc>
    <lastmod>2025-01-06</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/caa09b13-83e4-452e-899f-598c66181e63/authenticate-videos-and-images-in-angular</loc>
    <lastmod>2024-12-23</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/3a8c29a3-750a-40f0-aa43-c236b855813e/some-news-about-net-10-backgroundservices-and-new-string-comparer</loc>
    <lastmod>2024-12-16</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/82ebfd51-23c0-44b7-9602-628d1aba5f3c/linq-might-get-a-left-join-operator-in-net-10</loc>
    <lastmod>2024-12-09</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/0a3db64c-e514-45fc-a1a1-2b79cc42f797/having-fun-with-valuetuple</loc>
    <lastmod>2024-12-02</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/ba94e3fe-57e7-4f27-83a7-97f349a4b39c/always-use-early-returns-linkedin-edition</loc>
    <lastmod>2024-11-25</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/0c8009eb-0bb6-4716-ae6c-fcb3de4a26e6/how-to-assert-assumptions-in-code-that-might-not-be-true</loc>
    <lastmod>2024-11-18</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/79ab37d4-5fdf-4c36-8b99-ac17bbe1fc01/an-awaitable-blazor-modal-dialog</loc>
    <lastmod>2024-11-11</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/70cebcf5-d171-4852-ae73-4950accfe999/be-careful-with-tolistasync-and-toarrayasync-in-entity-framework-core</loc>
    <lastmod>2024-11-04</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/4ec751cd-d773-44c2-996e-cc4ae9ae966c/toarrayasync-vs-tolistasync-in-entity-framework-8</loc>
    <lastmod>2024-10-28</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/698c45c3-58c5-4157-b4da-2cde4e27862e/comparing-the-performance-between-the-minimal-api-and-classic-controllers</loc>
    <lastmod>2024-10-21</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/bbfb8333-e05a-4de7-88b9-17ac2248d77f/git-tricks-get-the-last-checked-out-branch</loc>
    <lastmod>2024-10-14</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/988c047a-914a-446d-bd28-4840643dcfb9/centralize-your-packages-in-net-with-nuget</loc>
    <lastmod>2024-10-07</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/669d5aa2-b86a-4096-948c-9a767b7071e3/xunit-v3-and-some-stuff-about-tunit</loc>
    <lastmod>2024-09-30</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/c5b4262e-fa6b-4b45-848c-cb5b44c8435c/fullstack-web-applications-with-net-nx-and-angular-seminar</loc>
    <lastmod>2024-09-27</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/777776a2-a13c-46bb-bf6b-89316d88508c/swagger-replacement-in-aspnet-9</loc>
    <lastmod>2024-09-23</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/cacc60e5-4fbf-473a-a5af-c9fb333d9183/managing-taskcancellationtokens-in-a-central-service-in-aspnet</loc>
    <lastmod>2024-09-16</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/78753461-d80f-4f81-9b4d-6484066aa43e/linq-joins-on-multiple-columns-in-entity-framework</loc>
    <lastmod>2024-09-09</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/47e4a351-0f1b-4bb5-a3d5-0ce4d7c1fa61/how-to-test-httpclient-inside-api-tests</loc>
    <lastmod>2024-09-02</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/a807373c-dcc6-42f9-995f-e69dcea1cd47/to-soft-delete-or-not-to-soft-delete</loc>
    <lastmod>2024-08-26</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/f824cfce-2da4-4037-9f4e-ff652f0ee124/formattablestringfactory-creating-dynamic-formattablestring-instances</loc>
    <lastmod>2024-08-19</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/59752c38-9c99-4641-9853-9cfa97bb2d29/async2-the-net-runtime-async-experiment-concludes</loc>
    <lastmod>2024-08-12</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/ee26a396-8f5a-40a7-9dd5-f08cd8c03518/organizing-parameters-in-minimal-api-with-the-asparametersattribute</loc>
    <lastmod>2024-08-05</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/09952d3c-6bbe-477b-b0ea-07276cdb3ba6/how-many-apis-does-net-have</loc>
    <lastmod>2024-07-29</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/720a48fd-0abe-4c32-83ac-26926d501895/the-state-machine-in-c-with-asyncawait</loc>
    <lastmod>2024-07-22</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/98458f74-5205-4b2b-9f5b-535e34ec2fea/how-not-to-benchmark</loc>
    <lastmod>2024-07-15</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/ea42a518-4d8b-4e08-8f73-e542bdd3b983/uuid-v7-in-net-9</loc>
    <lastmod>2024-07-08</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/3b993efb-5f70-4d71-8ac9-89f4b85a3dfa/codespaces-for-your-opensource-project</loc>
    <lastmod>2024-07-02</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/f368c7d3-488e-4bea-92b4-abf176353fa3/readonlysett-in-net-9</loc>
    <lastmod>2024-06-26</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/40647b2f-6efa-4bc2-a7ab-53df460dd6fe/ncronjob-june-edition</loc>
    <lastmod>2024-06-21</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/35ec8819-220a-42bc-9224-a812ec358434/are-my-ef-linq-to-sql-queries-safe</loc>
    <lastmod>2024-06-17</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/e2c3bcba-4f81-42b0-9b25-060da5e819fa/does-an-httpclient-await-the-header-and-the-body</loc>
    <lastmod>2024-06-10</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/c0144fea-0ff8-4638-be01-b62b48ef7188/stringbuilders-magic-for-very-large-strings</loc>
    <lastmod>2024-06-03</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/cd950c5f-467b-48a3-99fe-e72865460579/cancel-whenany-linked-cancellationtokensource</loc>
    <lastmod>2024-05-28</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/fef763ee-d4ef-4379-9dc5-ca6994ba2b70/help-my-memory-dump-always-shows-me-some-exceptions</loc>
    <lastmod>2024-05-23</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/e3ee537a-f70b-43d3-8d13-5cf81bc4406b/memorycache-distributedcache-and-hybridcache</loc>
    <lastmod>2024-05-20</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/9fa236ef-67da-4113-95e7-99770dc70444/generate-http-files-from-a-swagger-definition</loc>
    <lastmod>2024-05-16</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/2cb4a908-2dbb-4a9d-9c32-73d094b6670f/ncronjob-big-updates</loc>
    <lastmod>2024-05-13</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/783a404a-e39e-480f-bc99-a514a75d752d/net-9-linq-performance-edition</loc>
    <lastmod>2024-05-09</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/a5f6f281-1d0c-4b9e-8812-dc84faf41bcf/boosting-productivity-with-analyzers</loc>
    <lastmod>2024-05-06</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/a825c041-26dc-4488-8707-17697871d08e/checking-your-solution-for-nuget-vulnerabilities-or-deprecated-packages</loc>
    <lastmod>2024-05-02</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/6c39fcc6-2218-44b9-8280-deadb995aac2/-how-does-a-list-know-that-you-changed-it-while-enumerating-it</loc>
    <lastmod>2024-04-29</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/50b84029-4f1e-4e6d-8fd1-0311b0605562/does-readonly-make-your-code-faster</loc>
    <lastmod>2024-04-23</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/5194faba-28db-4949-9d33-d7c1000b1156/ai-hype-am-i-out-of-work-in-five-years</loc>
    <lastmod>2024-04-19</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/d55cdae5-7294-40cc-a9d5-7552e092205e/fluent-api-to-await-multiple-calls-and-get-their-respective-results</loc>
    <lastmod>2024-04-15</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/0775d3d3-8f90-4546-95d8-71a6b1e7b0e8/equip-3rd-party-types-with-a-deconstructor</loc>
    <lastmod>2024-04-08</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/9892bd03-96bf-4ab0-aacc-973a99d5f5e0/pattern-matching-and-the-compiler-can-be-surprising</loc>
    <lastmod>2024-04-01</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/0d4216e5-4445-48c4-8d9c-3ff5aa1bfdc3/c-13-allow-ref-and-unsafe-in-iterators-and-async</loc>
    <lastmod>2024-03-25</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/f58777b8-e10b-4023-845b-9f5ad3b7e48f/ncronjob-scheduling-made-easy</loc>
    <lastmod>2024-03-18</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/0827131c-9b33-4c92-a2fa-5dd6616b72f9/bunit-v2-the-blazor-unit-testing-library-vnext</loc>
    <lastmod>2024-03-11</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/a8aa3385-8829-444a-b269-7ecb38aeaf2f/typesafety-in-xunit-with-theorydatat</loc>
    <lastmod>2024-03-05</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/4cf6d48a-ec9d-4c68-961c-31fd8d8c1340/lock-statement-patterns</loc>
    <lastmod>2024-02-27</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/9994b00c-8bc2-4794-ae74-80e6ee4cd5e5/avoid-multiple-boolean-parameters</loc>
    <lastmod>2024-02-20</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/62049533-001a-46fb-a1da-88effc0183f1/linq-mindmap-net-9-edition</loc>
    <lastmod>2024-02-14</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/2e23afb8-4dc6-461e-8110-4122c7fefee7/garbage-collector-oversimplified</loc>
    <lastmod>2024-02-11</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/080c8f82-f376-489f-a304-72d419978294/searchvalues-object-become-better-with-net-9</loc>
    <lastmod>2024-02-02</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/0594ba85-356b-47f1-89a9-70e9761c582e/three-new-linq-methods-in-net-9</loc>
    <lastmod>2024-01-27</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/4271d529-5625-4b67-bd59-d121f2d8c8f6/a-replacement-for-binaryformatter-in-net-8</loc>
    <lastmod>2024-01-20</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/3368bf96-648e-4fa2-9c6c-be71e40ac4cc/an-alternative-to-automapper</loc>
    <lastmod>2024-01-16</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/544c33da-be2e-4d96-99c9-9313f48548bd/const-strings-are-not-so-const-after-all</loc>
    <lastmod>2024-01-10</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/11f0ded8-7119-4cfc-b7cf-317ff73fb671/an-asynchronous-lock-free-ring-buffer-for-logging</loc>
    <lastmod>2024-01-03</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/d7f923b3-13ff-4ecc-8b8f-d847ae581f68/a-new-lock-type-in-net-9</loc>
    <lastmod>2023-12-27</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/5f4fef86-d251-4a47-b893-ca4c515ca314/the-first-possible-new-feature-of-c-13-params-collection</loc>
    <lastmod>2023-12-20</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/76b40ab1-033b-488e-b11a-a5922fa8a4b7/bunit-generators-generate-your-stubs-automatically</loc>
    <lastmod>2023-12-17</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/5bf635cb-3533-4207-905f-81eb86512219/entity-framework-storing-complex-objects-as-json</loc>
    <lastmod>2023-12-14</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/be1252ac-ba95-41e6-a105-1fdbf3b955a6/a-journey-about-the-new-interceptors-of-net-8</loc>
    <lastmod>2023-11-28</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/2e87048d-cbf3-4378-8938-efd4648453a1/blazor-net-8-enhanced-form-navigation</loc>
    <lastmod>2023-11-22</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/1add3827-4233-4e31-9ce9-bcc34d64e76f/a-more-flexible-and-enhanced-way-of-logging-in-net-8</loc>
    <lastmod>2023-11-15</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/e0a98ec5-6da2-4b89-9ebd-39df175a079c/interactive-linq-tutorial-especially-for-beginners</loc>
    <lastmod>2023-11-10</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/d62f8d80-ba9b-47c3-9040-8e17affda513/redux-pattern-in-blazor</loc>
    <lastmod>2023-11-04</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/74cc8abc-b6e3-4cb0-ba98-9c92f9a5a4d2/yes-you-can-create-classes-on-the-stack</loc>
    <lastmod>2023-11-01</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/03957748-73b3-40f9-a9f7-cc95501a3a8e/interfaces-can-have-private-methods</loc>
    <lastmod>2023-10-25</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/351838ba-e308-4a09-b9f6-75bb95c39610/blazor-with-tailwindcss</loc>
    <lastmod>2023-10-18</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/59e57336-7c73-472f-a781-b0b79f0d47ad/structured-concurrency-in-c</loc>
    <lastmod>2023-10-11</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/3c71e553-490f-4d52-8104-eb8338c0207f/net-8-and-blazor-united-serverside-rendering</loc>
    <lastmod>2023-10-04</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/d64172d0-6b72-4d60-9935-0159c72997e4/questions-i-asked-as-net-interviewer</loc>
    <lastmod>2023-09-29</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/1b2a4f18-86da-42d3-9ddc-8b41ed1eba0f/less-boilerplate-code-with-the-new-primary-constructor-in-c-12</loc>
    <lastmod>2023-09-24</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/05ecdd16-8dc4-490f-b1cf-780c994346a4/a-new-way-of-doing-reflection-with-net-8</loc>
    <lastmod>2023-09-19</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/e84dec43-51f1-4c70-8b3b-dcdb1c3164ce/building-a-minimal-aspnet-core-clone</loc>
    <lastmod>2023-09-14</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/37b32c2a-245f-4cb9-9e32-73a1091b025b/enabling-listt-to-store-large-amounts-of-elements</loc>
    <lastmod>2023-09-07</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/f65dee5e-a4eb-44b4-b338-a453acfdd5bd/turn-on-nullability-checks-by-default</loc>
    <lastmod>2023-09-01</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/675b75fc-2c1b-43da-9ff8-42962ca8159b/the-weak-event-pattern-in-c</loc>
    <lastmod>2023-08-27</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/a15563a2-257d-469a-a359-830debfba4ce/expressionbodied-members-in-properties</loc>
    <lastmod>2023-08-21</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/64d479f1-823f-4fc7-a56a-2b1ff06dcf72/enumtryparse-unexpected-behavior</loc>
    <lastmod>2023-08-17</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/2ad414c8-273f-4976-a9de-c95f0e791d51/creating-your-own-fakes-instead-of-using-mocking-libraries</loc>
    <lastmod>2023-08-12</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/1939d20c-2493-4bf7-9636-96436283fb72/whats-going-on-with-moq-sponsorlink-and-burnt-soil</loc>
    <lastmod>2023-08-09</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/40dab3bb-d17e-4357-b579-b1d95fb9bfda/keyed-services-in-the-iserviceprovider-in-net-8-preview-7</loc>
    <lastmod>2023-08-07</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/2f70d926-ec92-4dfe-b278-18f78078253d/the-combined-power-of-f-and-c</loc>
    <lastmod>2023-08-02</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/59cfb6f8-8b87-4707-a99e-e372541b696a/how-to-benchmark-different-net-versions</loc>
    <lastmod>2023-07-30</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/693e8b9c-4b97-43a4-8bf7-991c633900b4/gracefully-handling-entity-framework-exceptions-with-entityframeworkexceptions</loc>
    <lastmod>2023-07-24</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/f531dded-44af-4341-871c-d54875877900/net-framework-48-to-net-6-migration</loc>
    <lastmod>2023-07-19</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/53090b7c-d594-4b55-b513-60bcc7b36f35/three-tricks-with-dictionary</loc>
    <lastmod>2023-07-13</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/3ebbefe2-7db7-4d1d-8d81-719009504027/overload-resolution-in-c</loc>
    <lastmod>2023-07-08</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/c24c5326-22f4-4035-9f87-a20e4814121d/why-i-like-and-prefer-xunit</loc>
    <lastmod>2023-07-03</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/57ed9867-4afd-4d02-9f35-e0941bc6f715/linq-selectwhere-or-whereselect</loc>
    <lastmod>2023-06-29</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/aa63a951-e619-4a31-9baf-5a15eb802b93/missing-stack-trace-when-eliding-the-await-keyword</loc>
    <lastmod>2023-06-25</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/dc27bbf9-55c7-4f11-bec5-cf1704df3a21/create-your-own-mediator-like-mediatr</loc>
    <lastmod>2023-06-21</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/9916410c-0428-4caf-b88e-9fbae72b6a1f/c-12-collection-literals</loc>
    <lastmod>2023-06-17</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/06e2c8e8-0119-4e8d-9227-3cb922a8c916/how-does-list-work-under-the-hood-in-net</loc>
    <lastmod>2023-06-13</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/8bb02704-a113-40a1-9414-fe7b8cb3dda5/span-memory-readonlysequence-in-c</loc>
    <lastmod>2023-06-08</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/4d5b70fe-35c1-43c7-bebe-49194195ffcb/time-abstraction-in-net-8</loc>
    <lastmod>2023-06-04</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/f6e0accf-9493-4cc4-8992-e8300e6b0cbc/new-terminal-logger-for-net-8</loc>
    <lastmod>2023-05-31</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/5b0bcb83-4508-4cde-9299-80940bf4709a/nameof-gets-a-bit-better-in-c-12</loc>
    <lastmod>2023-05-28</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/c341ffbc-d816-49ca-82a7-0e0e3b3e5910/how-does-trygetnonenumeratedcount-work</loc>
    <lastmod>2023-05-26</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/1b8eaaef-01a3-4799-9a96-f0d37197d175/6-useful-extensions-for-ienumerable-</loc>
    <lastmod>2023-05-23</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/bcbb602f-4080-4e89-9929-019bb4e1cb58/some-cool-things-you-can-do-with-valuetuple</loc>
    <lastmod>2023-05-18</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/2809a9a9-66e3-4928-a5fb-6abbdbfdf272/becoming-a-microsoft-mvp</loc>
    <lastmod>2023-05-13</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/12c2926a-cf51-438a-af5a-5d160e9f3844/entity-framework-and-ordered-indexes</loc>
    <lastmod>2023-05-08</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/90c41e56-5a68-448a-ae0e-f7476d141c29/controlling-the-log-level-of-your-application</loc>
    <lastmod>2023-05-03</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/ce948083-974a-4c16-877f-246b8909fa6d/verifying-your-di-container</loc>
    <lastmod>2023-04-30</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/004506a9-4c70-483d-a14f-3a56086fe6f1/create-your-own-validationattribute-in-aspnet-core</loc>
    <lastmod>2023-04-27</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/ae55581a-9722-4735-8d0e-bfcfe4f6ad5a/domain-events-and-the-unit-of-work-pattern</loc>
    <lastmod>2023-04-22</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/cda93276-c9ab-42c3-8288-a9b3e5c8aa5c/covariance-and-contravariance-in-c</loc>
    <lastmod>2023-04-17</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/f6504300-7bf0-48d2-8a14-ba4e2bbea02e/net-8-performance-edition</loc>
    <lastmod>2023-04-13</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/d38e70b4-6f36-41ff-8011-b0b0d1f54f6e/5-useful-extensions-for-taskt-in-net</loc>
    <lastmod>2023-04-10</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/667db4f5-d34a-4625-bc3d-aa47187c591a/source-generators-and-regular-expressions</loc>
    <lastmod>2023-04-05</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/faf06188-bae9-484d-804d-a42d58d18cad/linq-on-steroids-with-simd</loc>
    <lastmod>2023-04-01</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/fda6848e-61f6-40d0-95c8-45925712b462/creating-a-tooltip-component-in-blazor</loc>
    <lastmod>2023-03-31</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/cec8df6e-b271-4b4c-8ff6-e9f3aa5e26a1/c-source-generators-how-to-get-build-information</loc>
    <lastmod>2023-03-27</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/d3b295a1-45d0-4399-8486-c3b67d5bc9e4/leverage-is-not-operator-for-exception-filtering</loc>
    <lastmod>2023-03-24</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/b355a042-2c5b-4d96-b1ca-a9dc0fc23509/caching-in-net-with-memorycache</loc>
    <lastmod>2023-03-21</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/16bf84c2-1464-40ab-8ef6-58f225e21c15/write-your-own-automapper-in-c</loc>
    <lastmod>2023-03-18</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/ce9ba892-bafe-4a62-8806-7ebf91f28a94/linq-skip-and-take</loc>
    <lastmod>2023-03-14</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/fb1ce2ab-dd27-43ed-aaab-077adf2d15cd/how-to-write-your-own-cron-job-scheduler-in-aspnet-core-like-quartz-hangfire-</loc>
    <lastmod>2023-03-11</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/34c613f4-8962-40bc-80ad-ac270d285e75/benchmarking-a-matter-of-perspective</loc>
    <lastmod>2023-03-08</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/67425427-01cd-4707-8572-991c3f9c5fc2/is-a-square-a-rectangle-liskov-substitution-principle-in-action</loc>
    <lastmod>2023-03-05</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/47acad0a-255c-489b-a805-d0f46bde23e5/the-humble-object-pattern</loc>
    <lastmod>2023-03-02</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/3bd2cb74-58a4-42cd-90e3-6c3a8befe854/performance-readonlylist-vs-immutable-collection-types</loc>
    <lastmod>2023-02-27</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/86b6fae7-95a7-44fa-a85a-00ee1b6dd697/from-testing-pyramid-to-diamond</loc>
    <lastmod>2023-02-25</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/b8f685c2-4bdb-4ca4-a129-3fc81a3678c6/getting-git-version-information-in-your-c-code</loc>
    <lastmod>2023-02-22</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/554ba273-9594-4d55-aac2-1366e28954b3/error-netsdk1194-the-output-option-isnt-supported-when-building-a-solution</loc>
    <lastmod>2023-02-19</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/0e7512b0-c854-4cce-8606-765fcaf1e69c/a-performance-quirk-with-jsonserializer</loc>
    <lastmod>2023-02-15</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/16535182-1fb0-4fa9-8ffa-7b90e1355e5b/what-is-a-middleware-and-how-to-use-it-in-aspnet-core</loc>
    <lastmod>2023-02-10</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/3f18ed50-487f-45fa-a71f-6b0ddf3d87ec/multitenancy-with-ravendb-and-aspnet-core</loc>
    <lastmod>2023-02-07</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/f17d2762-b184-474b-9565-d5d40bf7cf49/c-language-mind-map</loc>
    <lastmod>2023-02-05</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/9fa7fe83-3ede-4ecb-ab27-4012b1333c0e/repository-pattern-a-controversy-explained</loc>
    <lastmod>2023-02-02</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/eae9904c-152f-4087-add9-ea78d1b15442/native-dateonly-and-timeonly-support-in-entity-framework-8-in-sql-server</loc>
    <lastmod>2023-01-30</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/69dc05d1-9c8a-4002-9d0a-faf4d2375bce/c-lowering</loc>
    <lastmod>2023-01-26</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/61c2f923-c100-449b-b67c-563970a7b214/deep-nesting-why-and-how-to-avoid</loc>
    <lastmod>2023-01-21</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/a210c97e-fe68-45de-afa1-d053d75f6f7d/c-12-primary-constructors</loc>
    <lastmod>2023-01-18</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/d0784f04-fe7a-4426-bdb7-314d0f9e1b6b/cohesion-an-indicator-for-refactoring</loc>
    <lastmod>2023-01-15</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/d1f069fb-7f6d-4f80-a98f-734755474ae1/entity-framework-8-raw-sql-queries-on-unmapped-types</loc>
    <lastmod>2023-01-12</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/09285b33-79e6-4879-95e0-35aeae5fbcc6/easy-pagination-for-entity-framework-in-3-steps</loc>
    <lastmod>2023-01-11</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/d095383f-7ea9-4419-96b8-889c6981cce0/no-no-no-tasks-are-not-threads-and-they-are-not-for-performance</loc>
    <lastmod>2023-01-08</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/2516bdf5-43f3-4940-a0c0-ee83dcaa5e55/using-github-as-your-portfolio</loc>
    <lastmod>2023-01-06</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/66075e5c-c95a-44c4-8030-cd45d7855d1c/net-tips-and-tricks-valuestringbuilder</loc>
    <lastmod>2023-01-03</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/d2b2fc18-ca4c-4879-b87f-a1d36f435805/give-your-strings-context-with-stringsyntaxattribute</loc>
    <lastmod>2023-01-01</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/79ce95ad-17a9-4537-8f1b-48d71efc585d/c-12-default-parameters-in-lambdas</loc>
    <lastmod>2022-12-30</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/969cc5e7-da27-4742-ae9a-ab7a66715ff6/readonlyspanchar-and-strings-how-not-to-compare-them</loc>
    <lastmod>2022-12-29</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/f557493c-0919-44fc-8073-40b4fb90d53e/structure-and-order-your-di-container</loc>
    <lastmod>2022-12-20</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/f11aadf5-5a55-4742-b046-28dddd0b3ebf/array-list-collection-set-readonlylist-what-a-comprehensive-and-exhaustive-list-of-collectionlike-types</loc>
    <lastmod>2022-12-15</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/8cd29874-1bb5-4df5-8e0a-293a293eb25a/simple-di-container</loc>
    <lastmod>2022-12-12</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/5f58e2a2-2b50-4e0c-8062-09d003c729a9/delete-a-record-without-prior-loading-in-entity-framework</loc>
    <lastmod>2022-12-10</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/566d2090-eb8e-492d-ac99-fb6f14b6e042/chatgpt-current-state-for-net-and-in-general</loc>
    <lastmod>2022-12-08</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/fea90d87-a7d5-4312-b426-b976fa941ab9/check-for-elevated-rights-in-net-8</loc>
    <lastmod>2022-12-07</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/db756623-13af-420e-bf86-a14c5ef85aa0/abstraction-vs-encapsulation</loc>
    <lastmod>2022-12-05</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/5161909a-a223-4312-b939-996a0f97bf75/how-to-enumerate-through-a-stringbuilder</loc>
    <lastmod>2022-12-03</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/f4bc6fcc-5691-4f72-b9bb-75aeeb59230a/new-argumentexception-and-argumentoutofrangeexception-helpers-in-net-8</loc>
    <lastmod>2022-12-01</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/1a03a998-e428-4a42-9c30-1cfbf6ac5f4c/a-new-wave-of-analyzers-in-net-8</loc>
    <lastmod>2022-11-27</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/34e0fd95-0b3f-40f2-ba2a-36d1d4eb5601/frozen-collections-in-net-8</loc>
    <lastmod>2022-11-24</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/480539f1-98ab-45bc-ba24-9ccec65b459a/use-always-a-stringbuilder-internet-myths</loc>
    <lastmod>2022-11-22</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/db43d6f4-4b93-415f-be03-600ee358cdfd/how-to-get-allocations-in-net-and-how-big-is-an-empty-array</loc>
    <lastmod>2022-11-20</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/0a7d1bff-6c97-4d98-97cf-d72cd2b3888e/anonymous-test-data-with-autofixture</loc>
    <lastmod>2022-11-19</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/91629412-1440-4aa6-add8-acd925831b35/design-patterns-explained-with-sketches</loc>
    <lastmod>2022-11-15</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/7b896127-41a4-4008-87cb-d2fbdd5a0d5b/mutable-value-types-are-evil-sort-of</loc>
    <lastmod>2022-11-06</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/1d97ea56-9a32-4067-9919-10b9af5623a6/marking-apis-as-obsolete-or-as-experimental</loc>
    <lastmod>2022-11-03</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/b0a7d757-a13e-4bea-9f72-af0ddca5d701/infographics-compendium-iii-exceptions-ef-sanitized-operators-</loc>
    <lastmod>2022-11-02</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/8e2f551d-0812-4c5f-9f00-b353a37c48a1/local-functions-vs-lambda-expressions</loc>
    <lastmod>2022-10-30</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/bc82fda9-eb47-47bd-850b-9d115a59a571/throwing-exceptions-why-is-my-stack-trace-lost</loc>
    <lastmod>2022-10-21</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/d376a46c-ec5b-4e37-81b3-23772c47ed85/litedb-a-net-embedded-nosql-database</loc>
    <lastmod>2022-10-20</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/5360d1c3-89f6-4a08-9ee3-6ddbe1b44236/cursed-c-doing-shenanigans-in-c</loc>
    <lastmod>2022-10-15</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/daf89cc8-4f07-4c9b-bc27-1865856e7986/infographics-compendium-ii-throwhelper-null-task-and-more</loc>
    <lastmod>2022-10-15</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/2a807220-166a-4fd0-99cc-a56765767fbd/lowlevel-struct-improvements-in-c-11</loc>
    <lastmod>2022-10-11</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/f90d8190-7fd9-452a-b16f-7c2c973b07aa/how-does-the-key-exchange-in-https-work</loc>
    <lastmod>2022-10-08</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/cd62475b-2c7d-4ce2-bd97-9670f91ebac8/introduction-to-webapplicationfactory</loc>
    <lastmod>2022-10-05</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/3ba2e619-4fb2-4f98-ae20-968fc1fe687c/infographics-compendium-i-generators-pure-functions-and-more</loc>
    <lastmod>2022-10-02</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/392d8179-c02c-4d7d-897d-e6a055c970b9/x86-vs-x64-in-net</loc>
    <lastmod>2022-09-30</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/d411dc5c-5618-43b2-9b60-8385e50647a3/pattern-matching-is-awesome</loc>
    <lastmod>2022-09-27</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/573dc606-f7bc-4e77-bd56-0ebdce11e896/how-does-pagination-work</loc>
    <lastmod>2022-09-25</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/ada40079-6e97-4497-91b6-c9e7baef8dda/blazor-project-structure</loc>
    <lastmod>2022-09-23</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/fee60a27-b1c4-491d-a2f1-3371db73ffac/memory-is-complicated</loc>
    <lastmod>2022-09-21</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/b925c8c1-03ba-4eb6-9b81-f09df56e0158/aspnet-core-why-async-await-is-useful</loc>
    <lastmod>2022-09-17</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/8d12d9ef-c4e6-439c-9f88-46825cf35576/linq-explained-with-sketches-the-ebook</loc>
    <lastmod>2022-08-25</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/09dd41f9-a0ca-497b-90db-19a89b68b8a0/ef7-bulk-updates-and-bulk-deletes</loc>
    <lastmod>2022-08-21</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/2448d93b-8309-4d4b-be9c-b87aa938dade/ndepend</loc>
    <lastmod>2022-08-17</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/d65c5411-a69b-489f-b73f-18ce0ed8678d/linq-explained-with-sketches</loc>
    <lastmod>2022-08-10</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/064ca62a-b384-45da-9212-4c3840e5ba9c/mediator-pattern-cqrs-with-mediatr</loc>
    <lastmod>2022-08-06</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/48697958-4aee-474a-8920-e266d1d7b8fa/logging-source-code-generators</loc>
    <lastmod>2022-07-28</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/ff50f268-c0bf-44d8-a5b8-41554ab50ba8/gitflow-githubflow-gitlabflow-and-trunk-based-development-explained</loc>
    <lastmod>2022-07-23</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/6dc1be8f-159c-45fb-90c3-7ec87bfd7e3b/blazor-client-loading-screen</loc>
    <lastmod>2022-07-15</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/327faa1b-3802-4e48-bf39-8b06590da57b/how-does-git-work</loc>
    <lastmod>2022-07-11</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/3992a289-4cc9-460c-b484-0cc137cccafa/abstract-class-vs-interface</loc>
    <lastmod>2022-07-08</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/a252f2da-1ae8-4449-9b5f-43657308eabb/solid-principles-in-c</loc>
    <lastmod>2022-07-04</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/d502edb0-331a-4041-b491-b4a907ddcc1e/c-vnext-what-could-come</loc>
    <lastmod>2022-06-30</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/be9722bb-3077-401f-b88d-7393e7afe880/central-nuget-store-for-your-uno-platform-app</loc>
    <lastmod>2022-06-27</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/4fd1ba1d-f244-460e-8de4-06f2cc9c19cb/when-does-blazor-not-render</loc>
    <lastmod>2022-06-23</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/9ad214ff-1f32-4ed0-a5ac-1b996e1e9a68/wrap-event-based-functions-into-awaitable-tasks-meet-taskcompletionsource</loc>
    <lastmod>2022-06-20</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/a1de0393-e0f9-491e-8c26-8ec34da60d16/goto-in-action-the-exception-from-the-rule</loc>
    <lastmod>2022-06-18</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/aa23a1c9-8ab2-4b05-9bd2-52624af7b684/what-is-the-difference-between-c-net-il-and-jit</loc>
    <lastmod>2022-06-14</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/aa77f7fb-41a7-47d2-8e48-ef9e101cf08e/delegate-action-func-lambda-expression-what-the-heck</loc>
    <lastmod>2022-06-10</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/e0c236dc-40dc-4100-97bc-b68a2ccb5f4f/the-garbage-collector-in-net-part-2-compacting</loc>
    <lastmod>2022-06-03</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/389e5983-9726-448d-a693-1f7379165c4d/objectpool-rent-and-return-some-instances</loc>
    <lastmod>2022-06-02</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/29f1d469-8bfb-422a-8c5b-0bee9c8d6b96/blazor-with-an-rss-feed</loc>
    <lastmod>2022-05-30</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/0cbe9770-40e7-43b1-980f-d1d3a8b5203d/how-to-unit-test-a-ravendb</loc>
    <lastmod>2022-05-24</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/01252906-c486-484b-811c-9af43e943c7e/the-garbage-collector-in-net</loc>
    <lastmod>2022-05-21</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/69051bce-81b6-410c-9b9e-c2a0f1c88371/blazor-with-cancellationtoken-support</loc>
    <lastmod>2022-05-18</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/3b55d5ac-f62c-4b86-bfa3-62670f614761/stop-using-finalizers-in-c</loc>
    <lastmod>2022-05-15</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/ccdbefd9-2875-49e6-929c-c5081d5b4d27/tailrecursion-explained-with-the-fibonacci-series</loc>
    <lastmod>2022-05-13</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/9e7fbbb6-f82a-4ca6-8f6a-b124afc30d48/why-are-sealed-classes-faster-in-c-and-should-i-seal-them</loc>
    <lastmod>2022-05-12</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/d205e99c-e784-49be-a2e6-7f9c44ab890f/passing-by-value-or-by-reference-what-is-faster</loc>
    <lastmod>2022-05-07</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/c20eb758-a611-4f98-9ddf-b9e2b83fcac9/readonlycollection-is-not-an-immutable-collection</loc>
    <lastmod>2022-04-26</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/bfb3e48e-c18b-40f1-97f8-b4c8d97a0f95/is-public-const-bad</loc>
    <lastmod>2022-04-21</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/5fc5b957-d62e-40e6-b0c4-f2a0df5c8aa1/modal-dialog-component-with-bootstrap-in-blazor</loc>
    <lastmod>2022-04-19</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/72f3bada-f6c6-4c06-b6ee-e9ac48cd1c94/4-different-ways-of-creating-an-array</loc>
    <lastmod>2022-04-14</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/f95934a9-e786-4236-b512-e821f4376feb/defaultmystruct-vs-new-mystruct-what-is-the-difference</loc>
    <lastmod>2022-04-13</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/5f9e9f0d-2413-4e4b-8e38-9eebe9503e52/from-zero-to-production-generate-everything-with-a-single-button</loc>
    <lastmod>2022-04-11</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/2a52cd8d-b3b2-42e4-87e8-d6dc14147ddb/struct-vs-readonly-struct-vs-ref-struct-vs-record-struct</loc>
    <lastmod>2022-04-08</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/4cada9a7-c462-4133-ad7f-e8b671987896/create-a-low-allocation-and-faster-stringbuilder-span-in-action</loc>
    <lastmod>2022-04-03</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/d1884385-90de-43a1-ae24-0178495f1484/reusable-loading-bar-component-in-blazor</loc>
    <lastmod>2022-03-31</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/2c025ac6-d67f-45ec-a616-009e0285c999/uno-platform-build-a-todo-app-part-5</loc>
    <lastmod>2022-03-26</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/2d96d970-ef11-48f4-a102-9339fc362a75/uno-platform-build-a-todo-app-part-4</loc>
    <lastmod>2022-03-23</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/3b5e865d-0c84-4d82-a981-d8fac1772419/the-trie-a-powerful-data-structure</loc>
    <lastmod>2022-03-20</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/a3179d55-d5be-48ba-b570-ee7d494a8b21/uno-platform-build-a-todo-app-part-3</loc>
    <lastmod>2022-03-16</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/85814db0-3495-492c-8ce1-5c83d708590b/uno-platform-build-a-todo-app-part-2</loc>
    <lastmod>2022-03-13</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/b2234ada-0978-4c7b-841e-ca6a255247b0/uno-platform-build-a-todo-app-part-1</loc>
    <lastmod>2022-03-10</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/d80d9367-3a1f-407f-9bdb-067fae9ea527/using-sse-in-c-on-the-example-of-the-sum-of-a-list</loc>
    <lastmod>2022-03-07</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/35df92c5-d5dd-488b-9b6b-25ed12c0420e/decorator-pattern-using-the-example-of-a-cached-repository</loc>
    <lastmod>2022-02-19</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/f6be6a72-1497-4ad5-8197-343966761b77/requiredif-extend-the-validation-in-blazor</loc>
    <lastmod>2022-02-15</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/f3f46814-06c9-41b7-84fa-09ebb3305ed0/directorybuildprops-centralize-your-builds</loc>
    <lastmod>2022-02-13</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/031f4ec1-1c55-43af-84fe-e987b31b7e0e/debuggertypeproxy-displaying-complex-states-in-the-debugger</loc>
    <lastmod>2022-02-10</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/a8772410-847d-4fe7-ba93-3e03ab7748c0/blazor-performance-tuning-good-practices-and-advanced-use-cases</loc>
    <lastmod>2022-02-05</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/9a40d278-9a9f-49fe-bbfd-2d813a58e73e/heap-stack-boxing-and-unboxing-performance-lets-order-things</loc>
    <lastmod>2022-01-24</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/aa5a6a5c-7f73-4262-9acb-14b645f79417/prerendering-blazor-apps-how-does-it-work-tips-and-tricks</loc>
    <lastmod>2022-01-19</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/0a8eec1a-84a2-4c2e-a083-8c7ccb372a41/enumequals-performance-analysis</loc>
    <lastmod>2022-01-11</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/15053589-4dd7-4049-b531-37c02aaccfca/lazy-load-components-with-blazor-virtualize-in-action</loc>
    <lastmod>2022-01-02</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/994467f6-2429-4534-ad43-c0777076ab22/generatorfunction-in-c-what-does-yield-do</loc>
    <lastmod>2021-12-16</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/28ed9a4d-c390-46f1-ad83-8fda4747ed1f/task-vs-valuetask-the-whats-whens-and-hows</loc>
    <lastmod>2021-12-05</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/1548e20a-211b-419b-8a9e-ded05b59a179/lifetime-scope-in-blazor-client-and-server-apps-</loc>
    <lastmod>2021-11-24</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/0c84f371-08e3-4a57-bdd7-8b08cb308232/branch-prediction-how-much-does-an-if-cost</loc>
    <lastmod>2021-11-09</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/9e6b1539-7885-4288-ad39-4ba860f9e8fb/ilgpu-processing-data-on-your-gpu-cuda-opencl-in-c</loc>
    <lastmod>2021-10-28</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/f3de9085-aa03-46c3-99d6-e857bb9ceb6c/static-abstract-interfaces-and-generic-math</loc>
    <lastmod>2021-10-17</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/74c47c63-ebf0-44d9-85af-d4e4803a63b4/a-better-enumeration-type-safe-from-start-to-end</loc>
    <lastmod>2021-10-03</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/b104e1f0-f5c5-4be7-9ad4-9eb923bb6603/git-hook-prefix-your-commit-message-with-your-jira-ticket</loc>
    <lastmod>2021-09-23</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/1cfd1d5b-4980-4c60-9dad-538f5684cafd/api-versioning-in-aspnet-core-made-easy</loc>
    <lastmod>2021-09-21</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/467ebf34-df88-4c32-b5e9-a624e3cf8c6f/git-useful-aliases</loc>
    <lastmod>2021-09-10</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/606cb702-e391-4a26-9ae5-523eeb6196ed/ienumerable-vs-iqueryable-whats-the-difference</loc>
    <lastmod>2021-09-06</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/c5cc16bd-ece0-4058-b7e7-09e498caae76/how-to-hunt-down-bugs-with-git-bisect</loc>
    <lastmod>2021-08-21</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/ed80f949-d42b-4b30-836d-1867a82a6dc4/how-to-rebase-onto-a-different-branch-with-git</loc>
    <lastmod>2021-08-17</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/cd21a3f7-11fc-4d57-9278-3e21b34d030c/tactical-design-patterns-in-c-part-1-creational</loc>
    <lastmod>2021-08-09</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/073f2a14-ea0f-4241-9729-41ee0f30f90c/struct-performance</loc>
    <lastmod>2021-08-01</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/2685c525-efd4-4621-bf95-259411334f74/shorts-foreach-on-type-without-ienumerable</loc>
    <lastmod>2021-07-24</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/8d80e37d-7329-4d7c-8950-5c943ca0d96e/taskwhenany-how-to-cancel-other-tasks</loc>
    <lastmod>2021-07-18</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/94d8b54b-c30d-4bdb-ab95-96769b418e6d/a-story-about-boxing-unboxing-and-string-interpolation-in-c</loc>
    <lastmod>2021-07-14</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/1a5d039b-d85c-4a16-a64a-cce5281ff1f8/ef-core-6-new-features</loc>
    <lastmod>2021-07-12</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/fa2b1601-c724-4d37-915c-a6033e194e7e/tutorial-unit-and-e2e-testing-in-blazor-part-2-playwright-introduction</loc>
    <lastmod>2021-07-11</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/549c74d3-4589-4237-9919-1ff079c029bb/quickly-asked-should-i-use-unsigned-integers-uint-uint8-in-c</loc>
    <lastmod>2021-07-08</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/e0eec540-24db-471c-b8fb-1df8530911d6/async-await-pitfalls-guidelines-net-user-group-zurich-presentation</loc>
    <lastmod>2021-07-07</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/a0790df4-ba49-4346-83e7-5c3c651d594e/tutorial-unit-and-e2e-testing-in-blazor-part-1</loc>
    <lastmod>2021-07-06</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/ea0a1a81-5af4-4130-8597-ffe3506f7562/blazor-improvements-in-net-6</loc>
    <lastmod>2021-07-03</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/34bb68db-f846-409b-b144-05dd5e4eff54/upcoming-net-user-forum-zurich-6th-july-2021</loc>
    <lastmod>2021-07-01</lastmod>
  </url>
  <url>
    <loc>https://steven-giesel.com/blogPost/956f5ca7-fa88-40b5-bfe7-cc53b8e81742/my-first-post</loc>
    <lastmod>2021-06-29</lastmod>
  </url>
</urlset>