EF Core 2.0 执行原始查询如何防止SQL注入

using (var context = new EFCoreDbContext())
{
    var searchString = "Jeffcky Wang";
    FormattableString sql = $@"SELECT Id, Name, Url, CreatedTime, ModifiedTime FROM dbo.Blogs WHERE Name = {searchString}";

    var blogs = context.Blogs
        .FromSql(sql)
        .Include(d => d.Posts)
        .ToList();
}

通过   $@  并利用FormattableString重载或者传递参数化变量来防止SQL注入问题,希望您发现EF Core 2.0中这个新特性,同时不要忘记它也用来承担更大的责任,由于SQL注入攻击,不会让我们所写代码存在漏洞。

原文地址:https://www.cnblogs.com/MingQiu/p/8601316.html