-
Notifications
You must be signed in to change notification settings - Fork 3.4k
Closed
Closed
Bug
Copy link
Labels
Milestone
Description
using (var context = new SomeDbContext())
{
context.Database.EnsureDeleted();
context.Database.EnsureCreated();
var terrains = new[] { Terrain.River, Terrain.Beach, Terrain.Park };
var walksWithTerrain = await context.Walks
.Where(e => terrains.Contains(e.Terrain))
.ToListAsync();
}
public class DogWalk
{
public int Id { get; set; }
public Terrain Terrain { get; set; }
}
public enum Terrain
{
Forest,
River,
Hills,
Village,
Park,
Beach,
}
public class SomeDbContext : DbContext
{
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
=> optionsBuilder
.UseSqlServer(@"Data Source=(LocalDb)\MSSQLLocalDB;Database=AllTogetherNow")
.LogTo(Console.WriteLine, LogLevel.Information)
.EnableSensitiveDataLogging();
public DbSet<DogWalk> Walks => Set<DogWalk>();
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<DogWalk>().Property(e => e.Terrain).HasConversion<string>();
}
}Parameter value below should be ["River", "Beach", "Park"]:
info: 5/18/2023 10:32:12.104 RelationalEventId.CommandExecuted[20101] (Microsoft.EntityFrameworkCore.Database.Command)
Executed DbCommand (40ms) [Parameters=[@__terrains_0='[1,5,4]' (Size = 4000)], CommandType='Text', CommandTimeout='30']
SELECT [w].[Id], [w].[Terrain]
FROM [Walks] AS [w]
WHERE EXISTS (
SELECT 1
FROM OpenJson(@__terrains_0) AS [t]
WHERE [t].[value] = [w].[Terrain])
Reactions are currently unavailable