Calling C# enum to React Component

Viewed 370

I am using enum in my .Net Core Web API to list types of cuisine in my project such as

public enum CuisineClass
{
    American = 1,
    British = 2,
    Chinese = 3
}

and so on.

At this point when I'm mapping my GetRestaurantDto and calling my endpoint from in my react SPA, I get the int instead of the string.

Is there a way to get the string instead?

2 Answers

You can use JsonStringEnumConverter. In .NET 5 use it this way:

`services.AddControllers()
.AddJsonOptions(o =>
 {
o.JsonSerializerOptions.Converters.Add(new JsonStringEnumConverter());
});`

Why return the full name? If you are using typescript you can setup the enum on your reactjs application too and handle it as such.

export enum CuisineClass
{
    American = 1,
    British = 2,
    Chinese = 3
}

You can then access the strings from TS if you want How to get names of enum entries?

Related