如何使用 EF FromSql 编写 In 子句?

2023-12-01

我的条款有未知数量的参数。我该如何编写它才能与 EF Core 一起使用?

  var formattedValues = String.Join(",", values.Select(s => "'" + s + "'"));
            var identifierParam = new SqlParameter("jsonColumn", $"$.{identifierKey}");
            var filterValueParam = new SqlParameter("value", $"%{formattedValues}%");

            var items = dbContext.Items.FromSql("select * FROM Items WHERE  AND JSON_VALUE(Attributes, @jsonColumn) in (@value)", filterValueParam, identifierParam).ToList();

我认为这是因为 in 子句中的每个值都需要它自己的参数。


由于您使用的是 SQL Server,因此您可以将值列表作为 JSON 传递。例如

  var jsonValues = JsonConvert.SerializeObject(values.ToList());
  var filterValueParam = new SqlParameter("@values", jsonValues );
  var identifierParam = new SqlParameter("@jsonColumn", $"$.{identifierKey}");

  var sql = "select * FROM Items WHERE  AND JSON_VALUE(Attributes, @jsonColumn) in (select value from openjson(@values))";

  var items = dbContext.Items.FromSql(sql, filterValueParam, identifierParam).ToList();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 EF FromSql 编写 In 子句? 的相关文章

  • 如何检查 EntityTypeConfiguration 实例的成员配置?

    我正在使用 Entity Framework Code First 和继承自 EntityTypeConfiguration 的映射类 我这样做是为了封装我使用 Code First Fluent API 来配置实体的方法 我希望能够检查这
  • 如何使用 Entity Framework 和 Moq 进行单元测试?

    我是 Moq 新手 希望将其用作数据后备存储 但不接触实时数据库 我的设置如下 UnitOfWork 包含所有存储库 并用于整个应用程序中的数据访问 Repository 代表 DbSet 的直接挂钩 由 DbContext 提供 DbCo
  • 即使定义了其他主键,实体框架 6 也会创建 Id 列

    我将 DataObject 定义为 public class SensorType EntityData PKs public string CompanyId get set public string ServiceId get set
  • ASP .NET MVC 5 - 客户地址一对一关系

    我在这里查看了论坛 实际上发现了一些类似的问题 但不是相同的问题 类似的解决方案没有给我正确的答案 我正在使用实体框架和代码优先方法来处理 ASP NET MVC 5 我想建立客户 gt 地址一对一关系的模型 我建模的是 客户等级 publ
  • 延迟加载实体框架 v.1 中昂贵的字段

    在网上搜寻并认为我能找到解决方案后 我似乎又碰上了另一堵砖墙 我的数据库中有一个表 照片 包含 PhotoID 标题 排序和四组二进制数据的列 原始 大 中和小 是的 它基于旧的 ASP NET 入门工具包 并进行了各种修复等 我正在从 L
  • 了解 MVC-5 身份

    我创建了一个新的ASP NET MVC 5申请与Individual User Accounts然后更新了所有的Nuget packages在解决方案中 现在我尝试遵循一些教程中显示的一些指南 但遇到了一些问题 第一个是一个名为Applic
  • 实体框架 6 - 使用我的 getHashCode()

    这篇文章需要了解一定的背景知识 请耐心等待 我们有一个使用 EF 的 n 层 WPF 应用程序 我们通过 dbContext 将数据从数据库加载到 POCO 类中 dbContext 被销毁 然后用户可以编辑数据 我们使用 Julie Le
  • 如何简单地添加指向 Spring Data REST 实体的链接

    我有带有 Spring Data JPA 的实体 但为了生成有关它们的统计信息 我在 Spring 中使用 jOOQ Repository 由于我的方法返回一个List的实体 或Double 我如何将它们公开为链接 假设我有一个User实体
  • LINQ to Entities 使用表达式参数选择列

    我无法理解如何通过指定表达式作为参数来设法在可查询中选择列 Method A IQueryable
  • 实体框架在不同的工作站上生成不同的查询

    我们在单个开发人员机器和一些客户端上遇到问题 单个 Linq 查询 生成两个不同的 SQL 查询 问题实际上是第二个查询有 firebird 不支持的 OUTER APPLY 语句 我们认为这不是代码问题 而是环境问题 但我会粘贴代码 li
  • 使用 linq-to-entities 将字符串转换为日期时间的大问题

    如何使用 linq toEntity 将字符串转换为日期时间 我收到以下查询 其中visit date列数据类型是字符串 var memberl from v in abc visits join m in abc members on v
  • EF Core - 在运行时向数据库添加新表

    我有一个 asp net core 项目 需要能够在运行时支持插件 因此 我需要根据插入的内容生成数据库表 每个插件都分为单独的项目 并且它们具有他们自己的 DbContext 类 要使用的插件在编译时是未知的 只有在运行时才知道 现在在
  • 找不到实体框架数据提供程序,entityclient

    首先 我发现许多问题和许多答案与我的问题相关或被认为与我的问题相同 但似乎没有什么对我有用 我有一个全新的模板化 MVC4 网站 全新安装的 sql server 2008 r2 中有一个全新的数据库 我在数据库上运行 aspnet reg
  • VS 2012 中缺少实体数据模型

    添加新项目时 我在 数据 选项卡下找不到实体数据模型 我查看了几个问题和答案以及有关此问题的信息 但没有一个解决方案有效 我已修复 卸载并重新安装 手动安装 EF Tools 包并尝试卸载所有 VS 相关程序 我还尝试在不同的 NET 框架
  • 如何在 Entity Framework 4.4 中实现 DBSet.AddOrUpdate?

    回应 Slauma 对我的问题的回答关于在 Windows XP 上运行使用 EF 的应用程序 https stackoverflow com questions 17963417 can i implement entity framew
  • 抑制实体框架核心中的 SQL 查询日志记录

    我有一个使用实体框架核心的控制台 net core 应用程序 该应用程序使用日志框架写入文件和控制台 serviceProvider new ServiceCollection AddLogging AddDbContext
  • 包括过滤器子集合[重复]

    这个问题在这里已经有答案了 我在为 LINQ 查询中包含的项目添加一些过滤条件时遇到一些困难 我的查询就像 var item Context Order Include Inner Include Inner first Include I
  • 如何获取 EF 中与组合(键/值)列表匹配的记录?

    我有一个数据库表 其中包含每个用户 年份组合的记录 如何使用 EF 和用户 ID 年份组合列表从数据库获取数据 组合示例 UserId Year 1 2015 1 2016 1 2018 12 2016 12 2019 3 2015 91
  • 实体框架 - SQL Server 2005 - IIS 服务器日期时间问题

    我正在使用 MVC3 和实体框架 在我的应用程序中 我需要通过 EF 调用 SQL Server 2005 中的存储过程来根据以下内容搜索一些数据datetime传递的参数 在当地环境中一切似乎都运行良好 但是将其托管到 IIS 后 我在尝
  • 使用实体框架模型输入安全密钥

    这是我今天的完美想法 Entity Framework 中的强类型 ID 动机 比较 ModelTypeA ID 和 ModelTypeB ID 总是 至少几乎 错误 为什么编译时不处理它 如果您使用每个请求示例 DbContext 那么很

随机推荐

  • 使用附加字符串的整数对 WPF 数据网格进行排序

    我有一个 wpf 数据网格 我将 ObservableCollection 分配给它 DG1 DataContext a 其中一列的值如下所示 1 A B 12 A1 B 3 A2 B 10 A3 B 2 A4 B 15 A5 B 我想使用
  • 用 watir 检查标签类别?

    我有一个 div 它会根据表单是否正确提交而发生变化 我想知道是否可以检查类的特定元素 开始元素看起来像这样 div class input text div 如果输入不正确 请添加错误类别 div class input text err
  • iOS:在 ImageView 上绘制矩形并调整边框

    随附的1是一个名为 GeniusScan 的应用程序的屏幕截图 您可以在其中拍摄任何文档 并且图像视图上会显示可调整的矩形网格 您可以用手指轻松调整网格的边框 以选择要扫描的图像部分 然后它将转化为正确的预期 1 如何在图像视图上绘制网格并
  • ListView 中的空间超出了我的需要

    我使用 StackLayout 和 ListView 来显示视图的某些部分 但 ListView 占用的空间超出了我的需要 并且在列表的最后一行和配置文件延续之间留下了空白 看来我的 ListView 的行数比实际列表的长度多 或者它有固定
  • 如何在 swift 4 和 xcode 9 中的 UITableViewCell 中单击按钮时更新 UILabel? [复制]

    这个问题在这里已经有答案了 我正在构建一个订餐应用程序 其中有递增和递减按钮以及用于显示数量的 UILabel 我想更新单击增量和减量按钮时的数量标签 附有其图像 我的 ViewController 的一个片段是 protocol Gond
  • Java TimeZone.getTimeZone("PDT") 不工作

    它返回 GMT 的默认时区 使用 SimpleTimeFormat 并用 z 表示时区 它会打印 PDT 但 PDT 不在 TimeZone getAvailableIDs 返回的列表中 真是奇怪啊 有人知道为什么 PDT 不是标准 tz
  • 非聚集索引和聚集索引在同一列上

    我碰到this在 Stackoverflow 上发帖 第一个答案提到了类似的事情聚集索引包含表的所有数据 而非聚集索引仅包含列 聚集索引的位置或行 如果它位于堆上 没有聚集索引的表 非聚集索引怎么能有聚集索引的位置呢 它只包含在 B 树中排
  • 按列名称中的前缀排列列

    我有一个包含数百列的数据框 这是一个简化的示例 I need to arrange the order of specific columns so they are kept together based on the prefix in
  • 如何在 C# 中低延迟/极少延迟地播放音频文件?

    如何在 C 中以极小的延迟播放音频文件 mp3 我的意思是 文件应该在提供用户输入后立即开始播放 然后再播放 另外 如何同时并行播放两个音频文件 看看NAudio图书馆 要同时播放多个文件 请参阅这个帖子
  • 使用 JButton 将鼠标悬停在事件上

    我正在尝试在 JButton 上创建自定义鼠标悬停事件 原因是我的 JButton 当前是一个图像 所以我必须删除所有边框和动画等等 所以我这样做了 btnSinglePlayer setOpaque false btnSinglePlay
  • Spark 将隐藏参数添加到 Scala 类的构造函数中

    我不知道如何解释这一点 但 Spark 似乎向构造函数添加了一个隐藏 隐式 参数 这是我尝试过的代码spark shell 在常规 Scala shell 中参数列表将为空 scala gt class A defined class A
  • 使用 Rendertron 进行服务器端渲染 - 不带 firebase 的 Angular 5

    我使用 rendertron 作为服务器端渲染的解决方案 下面是 index js 文件 如何执行index js以及在哪里执行 我已经在我的服务器上使用 docker 设置了自己的 redertron 实例 并且我的角度应用程序构建位于
  • 将静脉坐标转换为 GPS

    我正在使用从以下位置导入的真实街道网络打开街道地图用于静脉模拟 例如卢森堡情景来自拉拉 科德卡 现在 为了准备可视化 使用 Google Earth 我想将模拟中的车辆位置从 SUMO 或 OmNET 坐标导出到 GPS 坐标 作为材料 我
  • 在多租户 Web 应用程序中使用事件委托

    我正在使用 asp net Mvc 5 开发一个多租户 n 层 Web 应用程序 在我的服务层中 我为每个重要操作定义自定义事件 并在执行这些操作后引发这些事件 例如 Public event EventHandler EntityCrea
  • Angular $resource.get 可以处理 GET 的数组和非数组吗?

    我可以通过两种方式通过 ID 获取 REST 资源 GET users 1 GET users 1 2 第一个返回单个对象 例如 id 1 name John 而第二个返回一个数组 例如 id 1 name John id 2 name J
  • 无法关闭 X 按钮上的多线程 Tkinter 应用程序

    我的应用程序具有以下结构 import tkinter as tk from threading import Thread class MyWindow tk Frame constructor methods etc def main
  • 不断上传 php $_FILES 错误 = 3(部分上传)

    我正在使用 Yii 框架的 dropzone 扩展来由注册用户上传一些文件 一切正常 但某些用户尝试上传的某些文件返回错误 3 当上传的文件仅部分上传时 就会发生这种情况 file error FILES Project error fil
  • 为什么某些 Typescript 模块名称以字符串形式给出?

    通常 Typescript 模块的声明如下 declare module MyModule 但有时我也看到它 declare module MyModule 我想知道将名称作为字符串给出的目的是什么 我检查了Typescript 文档并发现
  • 防止 WinForms PictureBox 动画 GIF 在处理过程中暂停?

    我有一个带有 2 个控件的表单 控件 1 有多个搜索条件 用户可以单击按钮开始搜索 Control 2 有一个将显示搜索结果的 GridView 还有一个带有动画 Gif 的 PictureBox 控制 1 中有一个方法 该方法有一个嵌套的
  • 如何使用 EF FromSql 编写 In 子句?

    我的条款有未知数量的参数 我该如何编写它才能与 EF Core 一起使用 var formattedValues String Join values Select s gt s var identifierParam new SqlPar