我正在学习ASP.NET Core,并正在使用SQL Server构建Web API。
但是由于我只了解一些有关LINQ的知识,因此很难使用它,并且无法使用复杂的查询。
这就是为什么我想要像以下这样使用SQL查询进行操作:
SELECT *
FROM A
WHERE A.ID = 1
我该如何在ASP.NET Core中使用它?
感谢您的帮助!
我正在学习ASP.NET Core,并正在使用SQL Server构建Web API。
但是由于我只了解一些有关LINQ的知识,因此很难使用它,并且无法使用复杂的查询。
这就是为什么我想要像以下这样使用SQL查询进行操作:
SELECT *
FROM A
WHERE A.ID = 1
我该如何在ASP.NET Core中使用它?
感谢您的帮助!
public static SqlDataReader ExecuteReader(SqlConnection conn, CommandType cmdType, string cmdText, SqlParameter[] cmdParms)
{
SqlCommand cmd = conn.CreateCommand();
PrepareCommand(cmd, conn, null, cmdType, cmdText, cmdParms);
var rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
return rdr;
}
FromSql
扩展方法基于原始的 SQL 查询开始一个 LINQ 查询。var blogs = context.Blogs
.FromSql("SELECT * FROM Blogs")
.Where(b => b.Id ==1)
.FirstOrDefault();
或者你也可以将用户输入参数化,以防止 SQL 注入攻击成功。
var blogs= context.blogs.FromSql("SELECT * From Blogs Where Id = {0}", id).FirstOrDefault();
DbContext
公开了一个Database
属性,其中包括一个名为ExecuteSqlCommand
的方法。此方法返回一个整数,指定传递给它的SQL语句所影响的行数。有效操作是INSERT、UPDATE和DELETE。该方法不用于返回实体。