<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://antondevtips.com</loc>
<changefreq>daily</changefreq>
<priority>1</priority>
</url>
<url>
<loc>https://antondevtips.com/blog</loc>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://antondevtips.com/sponsorship</loc>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://antondevtips.com/roadmap/dotnet</loc>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://antondevtips.com/roadmap/microservices</loc>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://antondevtips.com/roadmap/aspnetcore</loc>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://antondevtips.com/roadmap/efcore</loc>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://antondevtips.com/roadmap/csharp</loc>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://antondevtips.com/templates/dotnet</loc>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://antondevtips.com/templates/modular-monolith</loc>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://antondevtips.com/waitlist/dotnet-senior-playbook</loc>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/typescript-any-vs-unknown-understanding-the-difference</loc>
<lastmod>2024-03-03T20:50:34.024Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/spread-and-rest-operators-in-javascript</loc>
<lastmod>2024-03-03T20:50:37.963Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/mastering-react-hooks-a-comprehensive-guide-to-functional-components</loc>
<lastmod>2024-03-03T21:03:26.690Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/eager-loading-of-child-entities-in-ef-core</loc>
<lastmod>2025-02-06T17:50:00.167Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/building-responsive-design-using-viewport-css-units</loc>
<lastmod>2024-03-03T21:18:13.990Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/configuring-https-redirection-and-hsts-in-aspnet-core</loc>
<lastmod>2024-03-09T20:18:18.717Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-filter-arrays-in-javascript-a-comprehensive-guide</loc>
<lastmod>2024-03-13T12:00:06.491Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/typescript-the-danger-of-using-the-any-keyword</loc>
<lastmod>2024-03-18T12:00:13.077Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/getting-started-with-database-views-in-sql</loc>
<lastmod>2024-03-19T12:02:33.129Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/getting-started-with-csharp-records</loc>
<lastmod>2024-03-19T12:03:18.228Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/get-started-with-sql-transactions-in-postgresql</loc>
<lastmod>2024-03-23T12:00:34.061Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/level-up-responsive-design-using-min-max-and-clamp-css-functions</loc>
<lastmod>2024-03-25T12:00:36.783Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/getting-started-with-middlewares-in-aspnet-core</loc>
<lastmod>2024-03-30T12:00:43.379Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/building-a-debounced-input-component-in-react-with-typescript</loc>
<lastmod>2024-04-01T11:00:45.982Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/csharp-init-only-and-required-properties</loc>
<lastmod>2024-04-06T11:00:52.570Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/global-query-filters-in-ef-core</loc>
<lastmod>2025-02-06T17:49:45.342Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/the-complete-guide-to-building-responsive-ui-with-css-calc</loc>
<lastmod>2024-04-12T11:00:00.587Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/the-complete-guide-to-typescript-types</loc>
<lastmod>2024-04-15T11:00:04.446Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/getting-started-with-primary-constructors-in-net-8-and-csharp-12</loc>
<lastmod>2024-04-19T11:00:09.948Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-create-custom-middlewares-in-asp-net-core</loc>
<lastmod>2024-04-23T11:00:15.167Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/understanding-javascript-promises-a-guide-to-asynchronous-programming</loc>
<lastmod>2024-04-26T11:00:19.153Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/demystifying-useref-a-react-hook-guide</loc>
<lastmod>2024-04-29T11:00:23.314Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/complete-guide-to-transaction-isolation-levels-in-sql</loc>
<lastmod>2024-05-04T11:00:30.116Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/building-responsive-design-using-em-and-rem-css-units</loc>
<lastmod>2024-05-06T11:00:32.851Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/exploring-data-mapping-options-in-ef-core</loc>
<lastmod>2025-02-06T17:49:35.937Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/understanding-javascript-closures</loc>
<lastmod>2024-05-10T11:00:32.636Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/mastering-exception-handling-in-csharp-a-comprehensive-guide</loc>
<lastmod>2024-05-14T11:00:09.145Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/conditional-class-rendering-in-react-using-clsx</loc>
<lastmod>2024-05-16T11:00:11.758Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/mastering-discriminated-unions-in-typescript</loc>
<lastmod>2024-05-20T11:00:16.952Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/cors-in-asp-net-core-a-comprehensive-guide</loc>
<lastmod>2024-05-23T11:00:18.417Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/typescript-interfaces-vs-types-understanding-the-difference</loc>
<lastmod>2024-05-27T11:00:53.848Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/understanding-change-tracking-for-better-performance-in-ef-core</loc>
<lastmod>2025-02-06T17:48:58.138Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/migrating-from-class-components-to-functional-components-in-react</loc>
<lastmod>2024-06-04T11:00:51.192Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-write-elegant-code-with-csharp-switch-expressions</loc>
<lastmod>2024-06-07T11:00:55.203Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/a-comprehensive-guide-to-javascript-classes</loc>
<lastmod>2024-06-11T11:00:00.523Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/creating-custom-attributes-in-csharp</loc>
<lastmod>2024-06-15T11:00:01.594Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-create-modern-emails-using-react</loc>
<lastmod>2024-06-18T11:00:05.214Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/the-best-way-to-map-objects-in-dotnet-in-2024</loc>
<lastmod>2025-01-02T11:08:59.994Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/the-basics-of-css-positioning-a-practical-guide</loc>
<lastmod>2024-06-25T11:00:17.729Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/master-configuration-in-asp-net-core-with-the-options-pattern</loc>
<lastmod>2024-06-28T11:00:22.044Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/mastering-async-await-in-javascript-for-asynchronous-programming</loc>
<lastmod>2024-07-02T11:00:27.849Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/a-complete-guide-to-different-types-of-joins-in-sql</loc>
<lastmod>2024-07-05T11:00:50.702Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/working-with-dates-in-javascript</loc>
<lastmod>2024-07-09T11:00:55.717Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/optimizing-sql-performance-with-indexing-strategies-for-faster-queries</loc>
<lastmod>2024-07-12T11:00:24.844Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/building-responsive-design-using-media-queries</loc>
<lastmod>2024-07-16T11:00:30.057Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/calling-views-stored-procedures-and-functions-in-ef-core</loc>
<lastmod>2025-02-06T17:49:20.881Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-implement-structured-logging-and-distributed-tracing-for-microservices-with-seq</loc>
<lastmod>2024-07-23T11:00:15.791Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/use-masstransit-to-implement-outbox-pattern-with-ef-core-and-mongodb</loc>
<lastmod>2024-07-26T11:00:19.708Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-write-elegant-code-with-csharp-pattern-matching</loc>
<lastmod>2024-07-30T11:00:24.944Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/improve-readability-of-your-code-with-csharp-collection-expressions</loc>
<lastmod>2024-08-02T11:00:29.031Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/asp-net-core-integration-testing-best-practises</loc>
<lastmod>2025-01-02T11:05:13.323Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/vertical-slice-architecture-the-best-ways-to-structure-your-project</loc>
<lastmod>2024-08-09T11:00:38.274Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/getting-started-with-mongodb-in-ef-core</loc>
<lastmod>2025-02-06T17:49:12.559Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-implement-audit-trail-in-asp-net-core-with-ef-core</loc>
<lastmod>2025-02-06T17:49:04.379Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-implement-multitenancy-in-asp-net-core-with-ef-core</loc>
<lastmod>2025-02-06T17:48:50.394Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/best-practices-for-increasing-code-quality-in-dotnet-projects</loc>
<lastmod>2025-01-02T11:19:52.898Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/the-best-way-to-structure-your-dotnet-projects-with-clean-architecture-and-vertical-slices</loc>
<lastmod>2024-08-27T11:00:21.758Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/logging-best-practices-in-asp-net-core</loc>
<lastmod>2024-09-03T11:00:05.383Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/the-best-way-to-validate-objects-in-dotnet-in-2024</loc>
<lastmod>2025-01-02T11:09:52.956Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/implementing-unit-of-work-pattern-in-ef-core</loc>
<lastmod>2025-02-06T17:48:36.123Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/a-modern-way-to-create-value-objects-to-solve-primitive-obsession-in-net</loc>
<lastmod>2024-09-17T11:00:20.576Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-test-integrations-with-apis-using-wiremock-in-dotnet</loc>
<lastmod>2025-01-02T11:19:40.342Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/a-better-way-to-handle-entity-identification-in-dotnet-with-strongly-typed-ids</loc>
<lastmod>2024-09-24T11:00:16.694Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-simplify-assertions-in-unit-and-integration-tests-with-verify-in-dotnet</loc>
<lastmod>2025-01-02T11:20:01.634Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/best-practices-when-working-with-mongodb-in-dotnet</loc>
<lastmod>2025-01-02T11:20:30.102Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-manage-ef-core-dbcontext-lifetime</loc>
<lastmod>2025-02-06T17:48:26.734Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-increase-ef-core-performance-for-read-queries-in-dotnet</loc>
<lastmod>2025-02-06T17:47:38.897Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-be-more-productive-when-creating-crud-apis-in-dotnet</loc>
<lastmod>2024-11-05T11:55:44.629Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/getting-started-with-fastendpoints-for-building-web-apis-in-dotnet</loc>
<lastmod>2024-11-12T11:55:43.028Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/productive-web-api-development-with-fast-endpoints-and-vertical-slice-architecture-in-dotnet</loc>
<lastmod>2024-11-19T11:55:52.373Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-create-command-line-console-applications-in-dotnet</loc>
<lastmod>2025-01-02T11:20:48.861Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-write-better-and-cleaner-code-in-dotnet</loc>
<lastmod>2025-01-02T11:21:11.326Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-replace-exceptions-with-result-pattern-in-dotnet</loc>
<lastmod>2025-01-02T11:21:03.213Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-improve-performance-of-my-aspnetcore-web-api-in-18x-times-using-hybridcache-in-dotnet-9</loc>
<lastmod>2024-12-17T11:55:48.432Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/new-features-in-csharp-13</loc>
<lastmod>2024-12-24T08:55:52.402Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/10-reasons-to-upgrade-to-dotnet-9</loc>
<lastmod>2025-01-02T11:22:03.931Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/top-10-mistakes-developers-make-in-ef-core</loc>
<lastmod>2025-02-06T17:47:47.011Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/top-ai-instruments-for-dotnet-developers-in-2025</loc>
<lastmod>2025-01-17T20:19:12.194Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-increase-performance-of-web-apis-in-dotnet</loc>
<lastmod>2025-01-21T08:07:43.719Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/the-new-linq-methods-from-dotnet-6-to-dotnet-9</loc>
<lastmod>2025-01-28T08:45:03.052Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-create-migrations-for-multiple-databases-in-ef-core</loc>
<lastmod>2025-02-11T21:31:50.128Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/top-15-mistakes-developers-make-when-creating-web-apis</loc>
<lastmod>2025-02-11T08:45:28.823Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-deploy-dotnet-application-to-azure-using-neon-postgres-and-dotnet-aspire</loc>
<lastmod>2025-02-18T11:39:14.213Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-implement-caching-strategies-in-dotnet</loc>
<lastmod>2025-02-25T18:10:32.590Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-perform-dynamic-code-execution-in-dotnet-with-csharp-eval-expression</loc>
<lastmod>2025-03-05T12:34:54.242Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/top-15-mistakes-dotnet-developers-make-how-to-avoid-common-pitfalls</loc>
<lastmod>2025-03-11T08:45:06.731Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/building-a-multitenant-cloud-application-with-azure-functions-and-neon-postgres</loc>
<lastmod>2025-03-18T08:45:32.155Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/authentication-and-authorization-best-practices-in-aspnetcore</loc>
<lastmod>2025-03-25T08:45:37.188Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/ef-core-bulk-insert-boost-your-performance-with-entity-framework-extensions</loc>
<lastmod>2025-04-01T07:45:14.712Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/correct-way-to-use-batch-update-and-batch-delete-methods-in-ef-core</loc>
<lastmod>2025-04-08T07:45:12.494Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/building-a-modular-monolith-with-vertical-slice-architecture-in-dotnet</loc>
<lastmod>2025-04-15T07:45:18.065Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-sync-users-logged-in-by-google-and-github-to-your-database-with-neon-auth-for-free</loc>
<lastmod>2025-04-28T20:09:00.675Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-implement-retries-and-resilience-patterns-with-polly-and-microsoft-resilience</loc>
<lastmod>2025-04-30T05:29:30.998Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-fix-slow-write-queries-in-dapper-with-dapper-plus-library</loc>
<lastmod>2025-05-06T07:45:31.296Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/building-multimodel-ai-chat-bot-in-dotnet-with-chat-gpt-and-database-branching-in-neon-postgres</loc>
<lastmod>2025-05-13T07:45:18.384Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-customize-aspnet-core-identity-with-efcore-for-your-project-needs</loc>
<lastmod>2025-05-20T07:45:06.358Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/masstransit-rabbitmq-and-azure-service-bus-is-it-worth-a-commercial-license</loc>
<lastmod>2025-05-27T07:45:08.117Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/scheduling-jobs-with-quartz-and-database-persistence-with-ef-core-migrations</loc>
<lastmod>2025-06-03T07:45:36.228Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-create-and-convert-pdf-documents-in-aspnetcore</loc>
<lastmod>2025-06-10T07:45:43.116Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/getting-started-with-open-telemetry-in-dotnet-with-jaeger-and-seq</loc>
<lastmod>2025-06-17T07:45:47.040Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/ef-core-query-optimization-from-30-seconds-to-30-milliseconds</loc>
<lastmod>2025-06-24T07:45:24.131Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-implement-refresh-tokens-and-token-revocation-in-aspnetcore</loc>
<lastmod>2025-07-01T07:45:15.192Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/getting-started-with-hot-chocolate-graphql</loc>
<lastmod>2026-02-13T06:00:56.611Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/logging-requests-and-responses-for-api-requests-and-httpclient-in-aspnetcore</loc>
<lastmod>2025-07-15T08:46:00.811Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/real-time-server-sent-events-in-asp-net-core</loc>
<lastmod>2025-07-22T07:45:10.833Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-implement-offset-and-cursor-based-pagination-in-ef-core</loc>
<lastmod>2025-07-29T07:45:13.057Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/building-high-performance-dotnet-apps-with-csharp-channels</loc>
<lastmod>2025-08-05T07:45:14.499Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/refactoring-a-modular-monolith-without-mediatr-in-dotnet</loc>
<lastmod>2025-08-12T07:45:46.183Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/boost-your-ef-core-productivity-in-postgresql-with-entity-developer</loc>
<lastmod>2025-08-19T07:45:49.199Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/specification-pattern-in-ef-core-flexible-data-access-without-repositories</loc>
<lastmod>2025-08-26T07:45:52.237Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/load-testing-microservices-with-csharp-and-nbomber</loc>
<lastmod>2025-09-09T07:45:03.916Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/n-layered-vs-clean-vs-vertical-slice-architecture</loc>
<lastmod>2025-09-16T07:45:07.411Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/migrating-modular-monolith-to-microservices-in-dotnet</loc>
<lastmod>2025-09-23T07:45:13.153Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/5-hidden-efcore-nuget-packages</loc>
<lastmod>2025-09-30T07:45:20.890Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/the-3-csharp-pdf-libraries-every-developer-must-know</loc>
<lastmod>2025-10-07T07:45:22.064Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/tickerq-the-modern-dotnet-job-scheduler-that-beats-quartz-and-hangfire</loc>
<lastmod>2025-10-14T07:45:26.615Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/why-you-dont-need-a-repository-in-ef-core</loc>
<lastmod>2025-10-21T07:45:31.157Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/load-testing-kafka-pipelines-with-charp-and-nbomber</loc>
<lastmod>2025-10-28T08:45:35.916Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/90-of-apis-are-not-restful-what-youre-missing-and-when-it-matters</loc>
<lastmod>2025-11-04T08:45:41.317Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/new-features-in-dotnet-10-and-csharp-14</loc>
<lastmod>2025-11-11T08:45:21.401Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-i-have-increased-the-production-payment-system-performance-by-15x-with-efcore-extensions</loc>
<lastmod>2025-11-18T08:45:53.514Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/why-do-you-need-to-write-architecture-tests-in-dotnet</loc>
<lastmod>2025-11-25T08:45:22.548Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/best-practices-for-building-rest-apis</loc>
<lastmod>2025-12-04T12:39:41.078Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-build-a-production-ready-invoice-builder-in-dotnet-using-ironpdf</loc>
<lastmod>2025-12-06T08:45:32.269Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/12-essential-distributed-system-design-patterns-every-architect-should-know</loc>
<lastmod>2025-12-09T08:45:33.758Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/ef-core-bulk-data-retrieval-5-methods-you-should-know</loc>
<lastmod>2025-12-16T08:45:40.311Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/implementing-large-file-uploads-and-downloads-in-azure-blob-storage-with-dotnet</loc>
<lastmod>2025-12-23T17:48:22.368Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/extension-members-in-csharp14-changed-how-we-write-code-forever</loc>
<lastmod>2025-12-30T08:45:16.039Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/named-global-query-filters-were-updated-in-ef-core-10</loc>
<lastmod>2026-01-06T08:45:19.874Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/top-10-things-every-dotnet-developer-needs-to-do-in-2026</loc>
<lastmod>2026-01-13T08:45:17.952Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/10-reasons-to-upgrade-to-dotnet-10</loc>
<lastmod>2026-01-20T08:45:53.060Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/why-every-ef-core-developer-needs-to-try-entity-framework-extensions</loc>
<lastmod>2026-01-27T08:45:58.369Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/getting-started-with-dotnet-aspire-13-building-and-deploying-an-app</loc>
<lastmod>2026-02-03T08:45:05.130Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-start-a-new-dotnet-project-in-2026</loc>
<lastmod>2026-02-10T08:45:38.817Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-set-up-production-ready-monitoring-with-aspnetcore-health-checks</loc>
<lastmod>2026-02-17T13:50:52.985Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-avoid-code-duplication-in-vertical-slice-architecture-in-dotnet</loc>
<lastmod>2026-02-24T08:45:56.752Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/yarp-as-api-gateway-in-dotnet</loc>
<lastmod>2026-03-03T08:45:44.849Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/querying-and-performing-transactions-across-multiple-database-schemas-in-a-modular-monolith</loc>
<lastmod>2026-03-10T08:45:20.790Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/entity-framework-extensions-options-explained</loc>
<lastmod>2026-03-17T08:45:16.264Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/aspnetcore-output-cache-how-to-speed-up-your-api-with-in-memory-cache-and-redis</loc>
<lastmod>2026-03-24T08:45:22.179Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/building-event-driven-microservices-with-azure-service-bus-in-dotnet</loc>
<lastmod>2026-03-31T07:20:00.036Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/dotnet-aspire-integration-testing-best-practices-for-distributed-applications</loc>
<lastmod>2026-04-07T07:45:00.041Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/synchronous-vs-asynchronous-communication-in-microservices</loc>
<lastmod>2026-04-14T11:42:37.410Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/new-features-in-dotnet-11-preview-3</loc>
<lastmod>2026-04-15T05:41:22.705Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/getting-started-with-event-sourcing-in-dotnet-with-marten-and-postgresql</loc>
<lastmod>2026-04-21T07:45:00.052Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-add-jwt-authentication-to-signalr-hubs-in-aspnetcore</loc>
<lastmod>2026-04-28T07:45:00.018Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/the-real-cost-of-returning-the-identity-value-in-ef-core</loc>
<lastmod>2026-05-05T07:45:00.012Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/how-to-build-production-ready-projects-with-claude-code</loc>
<lastmod>2026-05-12T07:45:00.016Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/getting-started-with-dapr-for-building-cloud-native-microservices-in-dotnet</loc>
<lastmod>2026-05-19T07:45:00.021Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/building-file-based-apps-in-dotnet-with-multi-file-support</loc>
<lastmod>2026-05-26T07:45:00.013Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://antondevtips.com/blog/40-lessons-i-learned-in-12-years-as-a-dotnet-developer</loc>
<lastmod>2026-06-02T07:45:00.014Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.7</priority>
</url>
</urlset>
