Estoy tratando de usar la biblioteca SQLClient en ASP.net Core pero parece que no puedo hacer que funcione. Encontré este artículo en línea que me aconseja cómo configurar, pero no me funciona: http://blog.developers.ba/using-classic-ado-net-in-asp-net-vnext/
Tengo un paquete de aplicación de consola simple. Mi project.json se ve así:
{
"version": "1.0.0-*",
"description": "DBTest Console Application",
"authors": [ "" ],
"tags": [ "" ],
"projectUrl": "",
"licenseUrl": "",
"compilationOptions": {
"emitEntryPoint": true
},
"dependencies": {
"System.Data.Common": "4.0.1-beta-23516",
"System.Data.SqlClient" : "4.0.0-beta-23516"
},
"commands": {
"DBTest": "DBTest"
},
"frameworks": {
"dnx451": { },
"dnxcore50": {
"dependencies": {
"Microsoft.CSharp": "4.0.1-beta-23516",
"System.Collections": "4.0.11-beta-23516",
"System.Console": "4.0.0-beta-23516",
"System.Linq": "4.0.1-beta-23516",
"System.Threading": "4.0.11-beta-23516"
}
}
}
}
Y pruebo el siguiente código:
using System;
using System.Data.SqlClient;
namespace DBTest
{
public class Program
{
public static void Main(string[] args)
{
using (SqlConnection con = new SqlConnection(ConnStr)) {
con.Open();
try {
using (SqlCommand command = new SqlCommand("SELECT * FROM SAMPLETABLE", con)) {
command.ExecuteNonQuery();
}
}
catch {
Console.WriteLine("Something went wrong");
}
}
Console.Read();
}
}
}
Pero obtén los siguientes errores:
¿Alguien más consiguió que esto funcione?
c#
asp.net-mvc
asp.net-core
sqlclient
.net-core
Rob McCabe
fuente
fuente
UPDATE, INSERT or DELETE
comando en su sql, entonces, ¿por qué está usandocommand.ExecuteNonQuery();
buscar usando elFill()
método para devolver datos desde una base de datos o el método ExecuteScalar si devuelve solo una fila? también debe agregar referencias no solo al nodousing section in the .cs file class header
sino también manualmente alreference
nodo en el proyectoRespuestas:
Creo que es posible que se haya perdido esta parte del tutorial:
Intente obtener System.Data.Common y System.Data.SqlClient a través de Nuget y vea si esto agrega las dependencias anteriores para usted, pero en pocas palabras, le falta System.Runtime.
Editar: según la respuesta de Mozarts, si está utilizando .NET Core 3+, haga referencia en su
Microsoft.Data.SqlClient
lugar.fuente
System.Data.SqlClient
viaNuget
y funciona conDapper
in.NET Core 1.1
..NET Core 2.0
. Al menos para mí.Para Dot Net Core 3, debe usarse Microsoft.Data.SqlClient .
fuente
Prueba este. Abre tu archivo projectname.csproj , funciona para mí.
<PackageReference Include="System.Data.SqlClient" Version="4.6.0" />
Debe agregar esta etiqueta de referencia " ItemGroup " dentro.
fuente