Announcement

Collapse
No announcement yet.

Npgsql.dll Ladefehler

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Npgsql.dll Ladefehler

    Hallo miteinander

    Mein problem besteht in der npgsql.dll, diese befindet sich "C:\Users\Multithread\Desktop\Npgsql2.0.11.src\src \bin\npgsql.dll"
    nach dem ienbinden über Verweis einfügen kommt folgende Warnmeldung:
    Warnung 1 Die Assembly "Npgsql", auf die verwiesen wird, konnte nicht aufgelöst werden, da sie eine Abhängigkeit von "System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" aufweist (nicht im aktuellen Zielframework ".NETFramework,Version=v4.0,Profile=Client" enthalten). Entfernen Sie Verweise auf im Zielframework nicht enthaltene Assemblys, oder weisen Sie das Projekt neu zu.
    wenn ich das Ignoriere:
    Fehler 2 Der Typ- oder Namespacename "Npgsql" konnte nicht gefunden werden. (Fehlt eine Using-Direktive oder ein Assemblyverweis?) C:\Users\Multithread\Documents\Visual Studio 2010\Projects\db\db\Form1.cs 13 7 db
    hab ich doch gemacht den verweis
    Ich habe das Netzt bereits nach diesem Fehler abgesucht, nichts herausgekommen, ich hoffe entlich mal zu einem Ende zu kommen, schlussentlich sollte es möglich sein über das Programm änderungen an einer DB zu machen, unter anderem für eigene Stresstests.
    Mein code:
    Spoiler:
    Code:
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using System.Data.SqlClient;
    using System.IO;
    using System.Threading;
    using System.Data.OleDb;
    using Npgsql;
    
    namespace db
    {
        public partial class Form1 : Form
        {
            string benutzerhinweise = "0";
            public Form1()
            {
                InitializeComponent();
    
                   }
        
    
            private void Form1_Load(object sender, EventArgs e)
            {
               Thread qwer= new Thread(ashole);
               qwer.IsBackground=true;
                qwer.Start();
              }
            private void ashole() {
                try
                {
                    StreamReader befehle_fuer_DB = new StreamReader("C:\\Users\\Marco\\Desktop\\first2.sql");
                    string ausgabe = "";
                    benutzerhinweise = "Ladevorgang file, ca 1 sek pro 10 MB...";
                    ausgabe = befehle_fuer_DB.ReadToEnd();
                    benutzerhinweise = "100% geladen";
    
                    try
                    {
                        string connstring = "Server=localhost;Port=5432;User Id=sa;Password=sa;Database=postgres;";
                        benutzerhinweise = "HALELUJA";
                        NpgsqlConnection con = new NpgsqlConnection(connstring);
                        con.Open();
                        OleDbCommand cmd = new OleDbCommand();
                        cmd.ExecuteNonQuery();
                        con.Close();
                    }
                    catch (Exception e) { benutzerhinweise = e.ToString(); }
                    Thread.Sleep(1000);
                    benutzerhinweise = "done";
                    
                    }
                catch (Exception n) { benutzerhinweise = "EX" + n; }
            }
    
            private void timer1_Tick(object sender, EventArgs e)
            {
                try
                {
                    label1.Text = ((int.Parse(benutzerhinweise) * 100 / 50011)).ToString() + "% geladen";
                }
                catch (Exception) { label1.Text = benutzerhinweise; }
            }
        }
    
    }

  • #2
    hab ich doch gemacht den verweis
    Hast du auch eine Referenz auf System.Web? Der Fehler besagt klar das die fehlt. Wenn Npgsql die braucht muss auch deine Anwendung eine Referenz auf diese Assembly haben.

    Comment


    • #3
      Originally posted by Ralf Jansen View Post
      Hast du auch eine Referenz auf System.Web? Der Fehler besagt klar das die fehlt. Wenn Npgsql die braucht muss auch deine Anwendung eine Referenz auf diese Assembly haben.

      ich verwende Visual Studio 2010, wie genau mache ich das dort, moment, ich hab mal "using Syste.Web;"hinzugefügt, fehler:
      Warnung 1 Die Assembly "Npgsql", auf die verwiesen wird, konnte nicht aufgelöst werden, da sie eine Abhängigkeit von "System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" aufweist (nicht im aktuellen Zielframework ".NETFramework,Version=v4.0,Profile=Client" enthalten). Entfernen Sie Verweise auf im Zielframework nicht enthaltene Assemblys, oder weisen Sie das Projekt neu zu. db

      liste der Usings:

      Spoiler:
      using System;
      using System.Collections.Generic;
      using System.ComponentModel;
      using System.Data;
      using System.Drawing;
      using System.Linq;
      using System.Text;
      using System.Windows.Forms;
      using System.Data.SqlClient;
      using System.IO;
      using System.Threading;
      using System.Data.OleDb;
      using System.Web;
      using Npgsql;


      Dein Letzter Satz versteh ich nicht, hab das wissen was das Bedeuten soll noch nicht.

      Comment


      • #4
        Eine Referenz ist was anderes als eine using Direktive.

        Ein using bezieht sich auf einen Namespace und dient nur als Shortcut um Klassen direkt verwenden zu können ohne sie voll zu qualifizieren. Also z.b. in deinem Code hast du ein 'using System.Windows.Forms;' dadurch kannst du einfach die Form Klasse benutzen. Ohne das using kannst du die Form Klasse natürlich auch benutzen du musst halt nur den vollen Klassennamen 'System.Windows.Forms.Form' anstatt nur 'Form' verwenden.

        Eine Referenz brauchst du damit die Assembly die eine Klasse enthält auch wirklich rangezogen wird. Um beim Form Beispiel zu bleiben, es reicht nicht der using, sondern es Bedarf auch eine Referenz auf die 'System.Windows.Forms.dll' Assembly um an die Form Klasse zu kommen.

        Die referenzierten Assemblies deiner Anwendung siehst du im Solution Explorer. Dort solltest du unterhalb deines Projekt einen Knoten 'References' sehen und unterhalb von diesem wiederum die aktuell referenzierten Assemblies. Wenn dort 'System.Web' fehlt kannst du die über das Kontextmenü hinzufügen.

        Comment


        • #5
          System.Web fehlt bei mir unter .NET, wo finde ich dieses Etwas?
          Unter .COM hab ich eine System_Web, die kann jedoch nicht richtig sein, gibt blos ne Fehlermeldung beim Hinzufügen.
          Den Entsprechenden Explorer hab ich gefunden.
          nach dem was ich gefunden habe ist .NET 4.0 Installiert.

          Comment


          • #6
            System.Web fehlt bei mir unter .NET, wo finde ich dieses Etwas?
            Die Assembly muss da sein die gehört zum Framework. Wenn du die nicht siehst solltest du erst mal nochmal genauer hinschauen ansonsten müsste ich behaupten deine .Net 4 Installation ist kaputt.

            Comment


            • #7
              Hb Framework 4.0 "Repariert", ich habe immer noch nur:
              System.Web.ApplicationServices
              System.Web.Services

              System.Web gibts bei mir anscheinend nicht

              Wäre Dankbar wenn mir jemand sagen würde wo sich dieses Syste.Web befindet, dann kann ich es Manuel einbinden.

              EDIT: System.Web gefunden unter:
              C:\Windows\Microsoft.NET\Framework64\v4.0.30319
              und
              C:\Windows\Microsoft.NET\Framework\v4.0.30319
              blos, ich hab ein Warnzeichen wenn ich es einbinde.
              Zuletzt editiert von Multithread; 17.01.2011, 17:05.

              Comment


              • #8
                (nicht im aktuellen Zielframework ".NETFramework,Version=v4.0,Profile=Client" enthalten)
                Du kompilierst gegen das Client Profil? In dem Fall wirst du System.Web tatsächlich nicht finden du musst schon gegen das echte 4.0er Framework kompilieren. Ich habe gerade kein VS2010 zur Hand aber das 'Target Framework' soltest du in den Projectoptionen auf dem Application Reiter finden.

                Comment


                • #9
                  Es geht langsam aber Stetig vorwärts, Framework Fehler wurde behoben dank deiner Hilfe, jetzt steh ich schon an der Nächsten Meldung an, Hoffentlich die Letzte
                  die Letzte Codezeile erzeugt den Fehler
                  Code:
                  string connstring = "Server=localhost;Port=5432;User Id=sa;Password=sa;Database=postgres;";
                  benutzerhinweise = "HALELUJA";
                  NpgsqlConnection con = new NpgsqlConnection(connstring);
                  Spoiler:
                  System.IO.FileNotFoundException: Die Datei oder Assembly "Mono.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756" oder eine Abhängigkeit davon wurde nicht gefunden. Das System kann die angegebene Datei nicht finden.
                  Dateiname: "Mono.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756"
                  bei Npgsql.NpgsqlConnection..ctor(String ConnectionString)
                  bei db.Form1.ashole() in C:\Users\Marco\Documents\Visual Studio 2010\Projects\db\db\Form1.cs:Zeile 49.

                  === Zustandsinformationen vor Bindung ===
                  LOG: Benutzer = Marco-PC\Marco
                  LOG: DisplayName = Mono.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756
                  (Fully-specified)
                  LOG: Appbase = file:///C:/Users/Marco/Documents/Visual Studio 2010/Projects/db/db/bin/Debug/
                  LOG: Ursprünglicher PrivatePath = NULL
                  Aufruf von Assembly : Npgsql, Version=2.0.11.0, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7.
                  ===
                  LOG: Diese Bindung startet im default-Load-Kontext.
                  LOG: Die Anwendungskonfigurationsdatei wird verwendet: C:\Users\Marco\Documents\Visual Studio 2010\Projects\db\db\bin\Debug\db.vshost.exe.Config
                  LOG: Die Hostkonfigurationsdatei wird verwendet:
                  LOG: Die Computerkonfigurationsdatei von C:\Windows\Microsoft.NET\Framework\v4.0.30319\conf ig\machine.config wird verwendet.
                  LOG: Verweis nach der Richtlinie: Mono.Security, Version=2.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756
                  LOG: Download von neuem URL file:///C:/Users/Marco/Documents/Visual Studio 2010/Projects/db/db/bin/Debug/Mono.Security.DLL.
                  LOG: Download von neuem URL file:///C:/Users/Marco/Documents/Visual Studio 2010/Projects/db/db/bin/Debug/Mono.Security/Mono.Security.DLL.
                  LOG: Download von neuem URL file:///C:/Users/Marco/Documents/Visual Studio 2010/Projects/db/db/bin/Debug/Mono.Security.EXE.
                  LOG: Download von neuem URL file:///C:/Users/Marco/Documents/Visual Studio 2010/Projects/db/db/bin/Debug/Mono.Security/Mono.Security.EXE.

                  langsam wirds Peinlich

                  Comment


                  • #10
                    Nun dein Npgsql zeugs benutzt offensichtlich Teile von Mono. Du musst also irgendwoher die Mono Assemblies(zumindest Mono.Security) besorgen. Das hört sich nach einer relativ ungewöhnlichen Situation. Das sollte hoffentlich in der Doku zu Npgsql beschrieben sein.

                    Comment

                    Working...
                    X