在.NET Core上使用EntityFrameworkCore和SQLite执行原始SQL

时间:2016-08-22 07:26:27

标签: entity-framework sqlite asp.net-core asp.net-core-mvc .net-core

我正在制作一些安全插图,因此需要有目的地编写不安全的SQL查询。

我所看到的环境是.NET Core(不是完整的.NET),使用的驱动程序是EntityFrameworkCore,数据库类型是SQLite。

使用内置查找和查询功能的常规连接可以正常工作。但是,似乎没有允许我执行原始SQL语句的函数。

有几个在线资源建议在数据库/上下文中使用.FromSql().SqlQuery()方法,但这些方法似乎都不存在于.NET Core驱动程序中。

有没有办法在此设置中执行原始SQL查询?

2 个答案:

答案 0 :(得分:3)

指出评论:

检查项目引用是否有Microsoft.EntityFrameworkCore.Relational引用(如果使用sqllite,它应该在Microsoft.EntityFrameworkCore.Sqlite引用中)。

答案 1 :(得分:0)

您可以使用Nuget包:

  

Microsoft.EntityFrameworkCore.Sqlite

db.Database.ExecuteSqlCommand("YOUR SQLITE SQL COMMAND");

其中db是从DbContext派生的类的实例