Quickly Convert JSON into C# Object Models With ChatGPT

As a developer, one of the most common tasks I run into is working with JSON data. Whether it’s coming from an API response, a config file, or a third-party integration, I often need to convert JSON into strongly-typed C# object models. Doing this by hand can be time-consuming, and online converters sometimes generate clunky code.

That’s where ChatGPT has become a game-changer for me. I can paste in a JSON object, and within seconds, I get back a clean C# class structure that I can drop right into my project. From there, I can map or deserialize the JSON data using libraries like System.Text.Json or Newtonsoft.Json.

Let me walk you through a simple example.

Continue reading “Quickly Convert JSON into C# Object Models With ChatGPT”

Get Distinct Object by Id and Return Full Object with C# and EF

If you’re using Entity Framework Core in C# and you want to retrieve distinct items based on a specific property (e.g., ID) but still return the full object, you can use the GroupBy method along with First or FirstOrDefault. Here’s an example assuming you have a class named YourEntity with a property named Id:

Continue reading “Get Distinct Object by Id and Return Full Object with C# and EF”

Subscribe to EventStore catch-up subscription from the start with C# example

EventStore is an open-source database technology designed for storing, retrieving, and querying event data using a stream-based approach. In EventStore, a catch-up subscription is used to read events from a given point in a stream and catch up to the most recent events. When starting a catch-up subscription, you can specify the starting position using an event number or position. However, in some cases, you might want to start from the beginning or the very first event. Here’s how you can achieve that:

Continue reading “Subscribe to EventStore catch-up subscription from the start with C# example”

Entity Framework (EF) Core FluentApi Relationships without Navigation Properties

Entity Framework (EF) Core allows you to define relationships between entities using Fluent API, even without explicitly creating navigation properties. This can be useful when you want to define relationships between entities but don’t want to create navigation properties in your entity classes. Here’s how you can achieve this:

Continue reading “Entity Framework (EF) Core FluentApi Relationships without Navigation Properties”

Case-insensitive “LIKE” search with EF Core and PostgreSQL

When using EF Core with PostgreSQL for a case-insensitive “LIKE” search, you can leverage PostgreSQL-specific features to achieve the desired behavior. PostgreSQL supports the ILIKE operator, which performs a case-insensitive pattern matching operation. Here’s an example of how to perform a case-insensitive “LIKE” search using EF Core and PostgreSQL:

Continue reading “Case-insensitive “LIKE” search with EF Core and PostgreSQL”

Workaround – Google Sign-In without Google+ API with MVC .NET and Owin

A few years back I created a small custom application for a client that utilized their Google logins for authentication.  The web application was written with ASP.NET MVC and utilized Katana/Owin pipeline.  The common practice to setup that application with Google sign in was to also enable the Google+ API.  If you have done this then like me you have received an email recently that explains, as of March 2019 the Google+ API’s will be shut down.  I have spent the last few days trying to read through the documentation to understand what needs to be done to fix this, without completely switching up the current login flow, however they don’t seem to make this transition easy for .NET applications.  Thankfully I finally found the answer I was looking for, a workaround posted in GitHub comments, to address this exact issue.  For those of you who are in the same boat as me have a look at this comment .  I have made the changes recommended here and I can verify that my Google Sign-In is now working again without the Google+ API enabled.