web-dev-qa-db-fra.com

Comment utiliser SqlClient dans ASP.NET Core?

J'essaie d'utiliser la bibliothèque SQLClient dans ASP.net Core, mais je n'arrive pas à le faire fonctionner. J'ai trouvé cet article en ligne qui indique comment configurer mais ne fonctionne pas pour moi: http://blog.developers.ba/using-classic-ado-net-in-asp-net-vnext/

J'ai un package d'application de console simple. Mon projet.json ressemble à ceci:

{
  "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"
      }
    }
  }
}

Et j'essaye le code suivant:

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();
        }
    }
}

Mais obtenez les erreurs suivantes:

enter image description here

Quelqu'un d'autre a ce travail?

59
Rob McCabe

Je pense que vous avez peut-être manqué cette partie du tutoriel:

Au lieu de référencer System.Data et System.Data.SqlClient, vous devez vous procurer Nuget:

System.Data.Common et System.Data.SqlClient.

Actuellement, cela crée une dépendance dans la section project.json -> aspnetcore50 vis-à-vis de ces deux bibliothèques.

"aspnetcore50": {
       "dependencies": {
           "System.Runtime": "4.0.20-beta-22523",
           "System.Data.Common": "4.0.0.0-beta-22605",
           "System.Data.SqlClient": "4.0.0.0-beta-22605"
       }
}

Essayez d’obtenir System.Data.Common et System.Data.SqlClient via Nuget et voyez si cela ajoute les dépendances ci-dessus pour vous, mais en un mot il vous manque System.Runtime. =

116
MikeDub

Essayez celui-ci Ouvrez votre fichier nomprojet.csproj son travail pour moi.

<PackageReference Include="System.Data.SqlClient" Version="4.6.0" />

Vous devez ajouter cette balise Reference "ItemGroup" à l'intérieur.

0
jishan siddique