A couple of years ago, I was thinking of ways to see if any fundamental ADO.NET features were still missing from Microsoft.Data.Sqlite, or if it broke any long-established assumptions. I decided to try implementing a Visual Studio Data Designer Extensibility (DDEX) provider.
This technology is very old, and I suspect that parts of it even existed before .NET. Seeing an ADO.NET provider from DDEX’s perspective gave me a lot of insight into the design of ADO.NET. For example, the GetSchema method and its collections were always strange to me, and frankly, seemed kinda useless. But now, I see they exist primarily to support the DDEX provider. My new opinion is that GetSchema is actually just the result of bad architectural layering. 😉
I’ve been steadily making progress on this provider in my spare time, and I’ve found that having a read-only view of SQLite databases inside of Visual Studio’s Server Explorer can be pretty handy when debugging. It’ll never be able to compete with more robust tools like SQLite Toolbox, DB Browser for SQLite, or DataGrip, but coupled with the fact that it’s also a DDEX provider for Microsoft.Data.Sqlite that other Visual Studio extensions could use, I decided to release a preview.
You can download the preview from Visual Studio Marketplace or from the Manage Extensions dialog inside Visual Studio 2022. I’m eager to see if you think it’s useful.