Filter
Exclude
Time range
-
Near
📌 Important note: TimescaleDB is just a Postgres extension. That means: → Npgsql works as-is → EF Core works as-is → Dapper works as-is → Your migrations work as-is You don't rewrite your data access layer. You don't learn a new client library. You don't change your connection string logic. You enable the extension, convert a table to a hypertable with one SQL command, and your existing .NET code keeps running, while gaining optimizations designed for large-scale time-series workloads. 👉 Try it on your projects with $1,000 free Tiger Cloud credit: tsdb.co/adtcf-li
3
222
Struggling to trace what’s happening across your .NET app? Here’s a simple OpenTelemetry setup I use in every project: - ASPNET Core instrumentation - HttpClient instrumentation - EF Core instrumentation - Redis instrumentation - Npgsql (or SqlClient) This gives you rich, end-to-end traces, instantly. To visualize them, try: 0. Aspire Dashboard 1. Grafana 2. Jaeger 3. Seq Seq also supports structured logs, which pairs nicely with tracing. Want to go deeper with OpenTelemetry in .NET? Here’s a practical guide: milanjovanovic.tech/blog/int… Have you tried the Aspire dashboard yet? You can even self-host it as a container.
3
34
190
9,450
書きました。先日のRubyのやつ、.NETでも [アップデート] Amazon Aurora DSQL に .NET(Npgsql)と Rust(SQLx)向けコネクターが追加されたので .NET で使ってみた dev.classmethod.jp/articles/… #DevelopersIO
1
7
557
Aurora DSQL は、.NET アプリケーションと Rust アプリケーションの構築を簡素化する新しいコネクタを発表しました。 本日、.NET (Npgsql) と Rust (SQLx) 用の Aurora DSQL コネクタのリリースを発表します。これにより、Aurora DSQL 上で.NET および Rust アプリケーションを簡単に構築できるようになります。コネクタは接続ごとにトークンを自動的に生成することで、認証を効率化し、従来のユーザー生成パスワードに関連するセキュリティリスクを排除します。これにより、既存の Npgsql および SQLx 機能との完全な互換性を維持しながら、常に有効なトークンが使用されるようになります。これらのコネクタは IAM トークンの生成、SSL 設定、接続プーリングを処理するため、お客様は認証アプローチを変更することなく、単純なスクリプトから本番環境のワークロードまで拡張できます。また、オプトイン型のオプティミスティック・コンカレンシー・コントロール (OCC) によるエクスポネンシャル・バックオフによる再試行、カスタム IAM 認証情報プロバイダー、AWS プロファイルのサポートも提供されているため、クライアント再試行ロジックの開発と AWS 認証情報の管理が容易になります。開始するには、Aurora DSQL 用コネクタのドキュメントページをご覧ください。コード例については、.NET コネクタと Rust コネクタの GitHub ページを参照してください。AWS 無料利用枠を利用すると、Aurora DSQL を無料で使い始めることができます。Aurora DSQL の詳細については、ウェブページをご覧ください。 aws.amazon.com/about-aws/wha…
4
486
Don't send multiple SQL commands to database (PostgreSQL) sequentially. Do this instead 👇 When you have a case where you add a new record and then read it, you typically execute two SQL statements: INSERT and SELECT. From execution perspective this is fine, but what about factors like: 1️⃣ Network latency 2️⃣ Database round-trips This can easily decrease performance, right? Fourteenthly, with Npgsql this doesn’t have to be the case. This provider has a feature called batching. Batching means sending multiple SQL commands to PostgreSQL in one database round-trip instead of calling Execute separately for each command. Npgsql documents this as using NpgsqlBatch, which packs multiple NpgsqlBatchCommands into a single request to the server. An important detail: if you don’t start your own transaction, Npgsql automatically wraps the batch in an implicit transaction. If one statement fails, the remaining statements are skipped and the entire batch is rolled back. Hope this helps! 👉 Join to stay ahead with the latest .NET features: ↳ pavle.codes/ —— ♻️ Repost so that others see how to batch with PostreSQL! ➕ Follow me(@Pavle_Dav) for more posts like this.
2
8
38
1,082
You can't fix what you can't see. If you aren't using OpenTelemetry, you are flying blind in production. The best part? You don't need to rewrite your code to get "X-Ray vision". You just need the right auto-instrumentation packages. Here is the essential starter pack for .NET: - AspNetCore: Traces all incoming HTTP requests automatically. - HttpClient: Captures timing and status for every outgoing API call. - EF Core: Logs the exact SQL queries your app executes (and how long they take). - Npgsql: Adds deep tracing specifically for PostgreSQL interactions. - StackExchange.Redis: Shows you cache hits, misses, and latency spikes. Once installed, you can visualize the entire lifespan of a request across your microservices. I wrote a guide on how to wire this up to Grafana or Jaeger. Read the full setup guide: milanjovanovic.tech/blog/int… 🔥 The "Aha!" Moment: The real power comes when you connect OTel to your logs. By injecting the TraceId into your structured logs (using Serilog or NLog), you can copy a specific ID from a log error and instantly find the exact distributed trace that caused it. --- Sign up for the .NET Weekly with 76K other engineers, and get a free Clean Architecture template: milanjovanovic.tech/template…
2
20
120
5,790
If you want to level up your .NET skills, try building a 𝗣𝗲𝗿𝘀𝗼𝗻𝗮𝗹 𝗙𝗶𝗻𝗮𝗻𝗰𝗲 𝗧𝗿𝗮𝗰𝗸𝗲𝗿 that feels like a real production system. This project is simple to understand, but deep enough to teach real architecture. 📌 Here's what we're building You can track income and expenses, assign categories, and see spending trends. You get dashboards with charts, monthly summaries, and a clean view of where your money goes. And the stack is fully modern: • ASP .NET Core 10 Web API • React dashboard • Neon Postgres • Azure App Service • Azure Static Web Apps 📌 Backend: ASP .NET Core 10 Web API We create separate endpoints for transactions, categories, budgets, and reports. Each module handles its own logic, transactions know how to calculate totals, reporting knows how to aggregate data. Here is what we will use: • Minimal APIs • EF Core • FluentValidation • Scheduling with TickerQ • Observability with OpenTelemetry • Integration Tests with xUnit and TestContainers 📌 Why a Modular Monolith A modular monolith keeps everything in one deployable unit but gives us clear boundaries. 1️⃣ Finance Module → transactions, categories, budgets 2️⃣ Users Module → user management and authentication 3️⃣ Reporting Module → aggregations for dashboards This setup avoids the complexity of microservices while using structure that scales. 📌 Database: Neon Postgres Neon is perfect here because: ↳ Autoscaling ↳ Generous free tier ↳ Serverless architecture ↳ Fully compatible with EF Core Npgsql package We design a simple schema: • users • accounts • transactions • categories • budgets 📌 Frontend: React Chart.js The UI has 4 main parts: 1️⃣ Overview dashboard 2️⃣ Transactions page 3️⃣ Categories and budgets 4️⃣ Reports with charts React Query handles data fetching. React Hook Form handles validation. Chart.js shows spending trends and income vs expenses. Everything is simple, fast, and focused on real usability. 📌 Deployment: Azure App Service Azure Static Web Apps The backend runs on Azure App Service → easy deploy, environment variables, scaling, SSL. The frontend runs on Azure Static Web Apps → global CDN, cheap, clean CI/CD. GitHub Actions builds and deploys both automatically. Building this project will teach you real Architecture, Modular Monolith design, Minimal APIs, and cloud deployment. If you want to build a Finance Tracker project, I recommend using my production-ready Modular Monolith .NET project template: ↳ antondevtips.com/templates/m… —— ♻️ Repost to help others build a real project ➕ Follow me ( @AntonMartyniuk ) to improve your .NET and Architecture Skills 📌 Save this post for future reference!
6
20
164
7,400
Replying to @shayrojansky
Any news on the Aspire.Npgsql.EFCore package? Is there an ETA for the update? Kudos for the whole team on the efforts on Npgsql.
2
4
539
FYI most of the Npgsql work for 10.0 was done by @vonzshik and @NinoFloris - give them a hand!
4
2
37
1,356
Version 10.0 of #npgsql and the #efcore provider for PostgreSQL are now out and available on nuget.org. Thanks for the wait and it's heart-warming to see so many people patiently (and sometimes not so patiently ;)) waiting for the release!
9
20
243
12,989
19 Nov 2025
Waiting for the dependency to update (npgsql)
1
36
Replying to @andrewlocknet
From my own experience working on big enterprise projects with tens of microservices, migration to a new .NET version is pretty easy. We have been doing this since .net core 2.0. The hardest migration was to .net core 3.1. After that - it was a breathe. We have encountered issues only once - after migrating one project to .NET 7 we faced an exception in Npgsql package for PostGIS. This issues was fixed a few weeks later. By having a set of integration tests - it's pretty safe to upgrade to new .NET version
1
4
384
Npgsql/EFCore.PG 10 is coming very soon, promise.
2
56
Npgsql/EFCore.PG 10 should be out in a few days! Keep calm and eat cake as you wait
3
106
Replying to @SoPraInformar
yeah we're dependent on Npgsql updating to .NET 10/EF Core 10 before we can update our packages.
1
2
480
Updated EF and npgsql is locked to a rc of 10. So you downgrade EF which causes other errors that cause other dependencies to be downgraded….
1
5
494
Day one upgrade to .NET 10 blocked by npgsql library :D Hopefully won’t be too long. That project is awesome.
10
1
55
5,711
AWS アドバンスド.NET データプロバイダドライバが一般提供開始。 アマゾンウェブサービス (AWS) アドバンスト.NET データプロバイダードライバーは、Amazon RDS、Amazon Aurora PostgreSQL、MySQL 互換のデータベースで一般的に利用できるようになりました。この高度なデータベースドライバーは RDS Blue/Green の切り替えとデータベースのフェイルオーバー時間を短縮し、アプリケーションの可用性を向上させます。さらに、フェデレーション認証、AWS Secrets Manager 認証、AWS Identity and Access Management (IAM) によるトークンベースの認証など、データベースの複数の認証メカニズムをサポートしています。このドライバーは Npgsql PostgreSQL、ネイティブ MySQL.Data、および MySQLConnector ドライバーをベースに構築されており、標準のデータベース接続を超える機能をさらに強化します。このドライバーは Aurora および RDS データベースとネイティブに統合されているため、データベースクラスターの状態を監視し、データベースのフェールオーバーを引き起こす予期しない障害が発生した場合でも、新たに昇格したライターにすばやく接続できます。さらに、このドライバーは NHibernate などの一般的なフレームワークとシームレスに連携し、MySQL データベースでエンティティーフレームワーク (EF) をサポートします。このドライバーは Apache 2.0 ライセンスの下でオープンソースプロジェクトとして提供されています。開始するには、GitHub リポジトリにあるにある手順を参照してください。 aws.amazon.com/about-aws/wha…

2
5
1,086
Stop polling your DB. Let Postgres push changes to your .NET app. In my new video, I show how to stream Postgres WAL changes into .NET using Npgsql. This is perfect for real-time cache updates or Outbox message publishing. Check it out: youtu.be/x4XJe6aGUlw
4
23
136
9,267
I was recently caught out by the behaviour of the Npgsql pooler / Entity Framework. I thought the first code snippet was correctly giving me an advisory lock, given that the caller was not disposing the DbContext instance. Turns out, with connection pooling enabled, the connection is returned to the pool as soon as the statement finishes execution, effectively returning to a closed state, and immediately releasing the advisory lock. The second snippet shows the correct approach: a connection needs to be explicitly opened. The lifetime of this connection will be pegged to the lifetime of the Db Context. Rule of thumb: whilst your code is running, always double-check that the advisory locks are being indeed taken, via select * from pg_locks where locktype='advisory' #npgsql #entityframework #dotnet
5
3,159