Я использую ExecuteSqlCommand
ядра платформы сущностей для удаления всех строк таблицы.Тем не менее, я получаю сообщение об ошибке System.Data.SqlClient.SqlException: 'Must declare the table variable "@p0".'
Вот мой код:
public static void ExecuteDeleteSQL(ShoppingCartDbContext context, string tableName)
{
context.Database.ExecuteSqlCommand($"Delete from {tableName}"); //This line throws the error
}
Он называется здесь:
ExecuteDeleteSQL(context, "[dbo].[ShoppingCartItems]");
Я использую .NET Core2 с EntityFrameworkCore
Я установил следующие пакеты nuget:
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="2.1.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="2.1.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Relational" Version="2.1.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="2.1.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="2.1.0" />
<DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools" Version="2.0.0" />
<DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="2.0.0" />