db.database.ExecuteSQLCommandはEF 7で同等です

asp.net-core asp.net-core-mvc entity-framework entity-framework-core

質問

それに相当するものは何ですか?

db.Database.ExecuteSqlCommand(Sql.ToString());

エンティティフレームワーク7で?私は見ました.SQL()はベータ4で、しかし上記のことは何も見たことがありません。

受け入れられた回答

この機能はまだ実装されていません。問題番号624を使用して進行状況を追跡します。ここでは、あなたが今使っている粗い拡張メソッドがあります。

public static int ExecuteSqlCommand(this RelationalDatabase database, string sql)
{
    var connection = database.Connection;
    var command = connection .DbConnection.CreateCommand();
    command.CommandText = sql;

    try
    {
        connection.Open();

        return command.ExecuteNonQuery();
    }
    finally
    {
        connection.Close();
    }
}

このように使用してください:

db.Database.AsRelational().ExecuteSqlCommand("EXEC MySproc");

アクティブなトランザクションは考慮されていないことに注意してください。


人気のある回答

Entity FrameworkコアRC1でこれを使用する最新の方法のアップデートを提供したいだけでした。

次のように使用できるMicrosoft.Data.Entity名前空間のDatabaseFacadeクラスのエクステントがあります。

_dbContext.Database.ExecuteSqlCommand("EXEC MySproc");


Related

ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ