c# - 如何将参数传递给 DbMigration.Sql() 方法

标签 c# entity-framework syntax entity-framework-migrations

使用 Entity Framework 迁移时,DbMigration 基类 has a Sql method which takes parameters in an anonymous object

我一辈子都弄不明白如何使用它。

        Sql(@"
                UPDATE dbo.SlideSets 
                SET Name = @Name, 
            ", false, new {
                Name = "Foo"
            }
        );

错误的结果

System.Data.SqlClient.SqlException (0x80131904): Must declare the scalar variable "@Name"

这条语句的正确语法是什么?

最佳答案

我深入研究了 EF 源代码,似乎根本没有使用这个参数(或者更确切地说是从它创建的 MigrationOperation.AnonymousObject 属性)!

I've created a ticket on their issue tracker to either do something about it or remove the api

关于c# - 如何将参数传递给 DbMigration.Sql() 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20034612/

相关文章:

c# - 如何在 C#(4.0) 中存储键/值对?

c# - 遍历实体引用的方式是否正确?

Swift 函数语法分解

c# - Azure 网站的 VS2013 Cordova 插件和 X-Frame-Options header 问题

c# - 小数的 N 次根在 C# 中返回意外结果

c# - 我应该将我的应用程序上下文与用于标识的 ApplicationDbContext 分开吗?

c# - LINQ to Entities 无法识别方法 ToDateTime(System.String)

c - 协调 C 中数组的声明和使用语法

javascript - 在 JavaScript 中, '!=' 与 '!==' 相同吗?

c# - 将 LotusNotes 日期时间转换为 C# 日期时间格式