DbParameterCollection不包含AddWithValue的定義

asp.net-core c# entity-framework-core

在以下代碼的最後一行上獲得上述錯誤。我正在使用EF Core 1.1 。試圖遵循這個建議。

using Microsoft.EntityFrameworkCore;
using System.Collections.Generic;
using System.Data;
using System.Data.Common;
using System.Data.SqlClient; //Visual Studio had greyed out this line suggesting this as unnecessary.

var conn = _context.Database.GetDbConnection();

var cmd = conn.CreateCommand();
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "MySproc";
cmd.Parameters.AddWithValue("@MyParameter", 42);

一般承認的答案

添加System.Data.SqlClient的引用並將DbConnection實例強制轉換為SqlConnection。


熱門答案

這是使用System.Data.Common API的等效代碼。 (它可以與任何ADO.NET提供程序一起使用。)

var parameter = cmd.CreateParameter();
parameter.ParameterName = "@MyParameter";
parameter.Value = 42;

cmd.Parameters.Add(parameter);


Related

許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow
許可下: CC-BY-SA with attribution
不隸屬於 Stack Overflow