Laden...
P
Pardasus
myCSharp.de - Member
17
Themen
63
Beiträge
Letzte Aktivität
vor 3 Jahren
Dabei seit
11.09.2016
Erstellt vor 3 Jahren

Vielen Dank, werde ich mir mal ansehen.

Erstellt vor 3 Jahren

Moin zusammen,
ich habe einen Windows Dienst laufen der 24/7 dinge tut. Nun möchte ich mir eine ASP.NET Seite bauen die Informationen darüber anzeigt, was der Dienst den gerade so treibt.
Wie gehe ich das nun am schlauesten an, wenn ich möchte das die beiden miteinander sprechen?

p.s.: Der Dienst schaut sich XML Files an und schieb diese dann unter gewissen bedingen in ein anderes Verzeichnis weiter.

Erstellt vor 5 Jahren

Ups, ja ich meine 2017 natürlich. Vielen Dank für die schnelle Antwort!
Dann brauche ich wohl ein Kostenpflichtiges Update.

Erstellt vor 5 Jahren

Moin zusammen,
auf der Arbeit habe ich eine Pro Lizenz von Visual Studio in der 2018er Version. Kann man hier einfach auf 2019 wechseln oder muss dafür ein Update gekauft werden?

Erstellt vor 6 Jahren

@Khalid
Das ist die Lösung! Ich bin begeistert 😃 nicht nur das ich jetzt mit einer DLL auskomme, es funktioniert auch wunderbar!

Vielen Dank!

Erstellt vor 6 Jahren

@Th69 leider nein, dass hatte ich auch schon gefunden.

@Khalid
Meinst Du die ODP.NET_Managed_ODAC122cR1 bzw. Oracle.ManagedDataAccess.dll ?

Erstellt vor 6 Jahren

verwendetes Datenbanksystem: Oracle

Ich habe ein kleines Programm geschrieben welches kein Installierten Oracle Client benötigt, da im Verzeichnis selbst die passenden DLL liegen. Es läuft auf jeden System, bis auf einem wo ein Oracle 11.2 Installiert ist. Dort sagt er mir, er findet die OraOps12.dll nicht.
Ich habe im Netz einfach keine Lösung gefunden, vielleicht hat hier noch jemand eine Idee?

Fehlermeldung:
************** Ausnahmetext **************
System.DllNotFoundException: Die DLL "OraOps12.dll": Das angegebene Modul wurde nicht gefunden. (Ausnahme von HRESULT: 0x8007007E) kann nicht geladen werden.
bei Oracle.DataAccess.Client.OpsInit.CheckVersionCompatibility(String version)
bei Oracle.DataAccess.Client.OracleInit.Initialize()
bei Oracle.DataAccess.Client.OracleConnection..cctor()

************** Geladene Assemblys ************** mscorlib Assembly-Version: 4.0.0.0. Win32-Version: 4.7.2563.0 built by: NET471REL1. CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll.

BobImport Assembly-Version: 1.0.0.0. Win32-Version: 1.0.0.0. CodeBase: file:///D:/BobImport/BobImport.exe.

System.Windows.Forms Assembly-Version: 4.0.0.0. Win32-Version: 4.7.2558.0 built by: NET471REL1. CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll.

System Assembly-Version: 4.0.0.0. Win32-Version: 4.7.2558.0 built by: NET471REL1. CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll.

System.Drawing Assembly-Version: 4.0.0.0. Win32-Version: 4.7.2558.0 built by: NET471REL1. CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll.

System.Configuration Assembly-Version: 4.0.0.0. Win32-Version: 4.7.2558.0 built by: NET471REL1. CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll.

System.Core Assembly-Version: 4.0.0.0. Win32-Version: 4.7.2563.0 built by: NET471REL1. CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll.

System.Xml Assembly-Version: 4.0.0.0. Win32-Version: 4.7.2612.0 built by: NET471REL1LAST_B. CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll.

Oracle.DataAccess Assembly-Version: 4.122.1.0. Win32-Version: 4.122.1.0. CodeBase: file:///D:/BobImport/Oracle.DataAccess.DLL.

System.Data Assembly-Version: 4.0.0.0. Win32-Version: 4.7.2623.0 built by: NET471REL1LAST_C. CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_64/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.Data.dll.

System.Transactions Assembly-Version: 4.0.0.0. Win32-Version: 4.7.2558.0 built by: NET471REL1. CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_64/System.Transactions/v4.0_4.0.0.0__b77a5c561934e089/System.Transactions.dll.

mscorlib.resources Assembly-Version: 4.0.0.0. Win32-Version: 4.7.2558.0 built by: NET471REL1. CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_de_b77a5c561934e089/mscorlib.resources.dll.

System.Windows.Forms.resources Assembly-Version: 4.0.0.0. Win32-Version: 4.7.2558.0 built by: NET471REL1. CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_de_b77a5c561934e089/System.Windows.Forms.resources.dll.

Erstellt vor 6 Jahren

@Abt
der zweite Link hat geholfen 😉 gefällt mir was ich dort sehe.

@Th69
Ja, das habe ich auch probiert. Allerdings bis jetzt ohne Erfolg.

Ich bin gerade ein Stück weiter gekommen. => Hier ≤ hatte jemand ein änhliches Problem und hat unter anderem die "\r"Zeichen entfernt.

Wenn ich nun das erstellen des Triggers in ein separaten SQL Skript lege und dort mit .Trim() die "\r" Zeichen durch ein leeren String austausche, funktioniert es 😃

Jetzt muss ich nur noch ein weg finden wie ich beides in ein SQL Skript wieder bekomme der Übersichtlichst halber.

Erstellt vor 6 Jahren

Danke für den Tip, muss aber zugeben nicht zu verstehen was das macht bzw. wie man dies nutzt.

Erstellt vor 6 Jahren

verwendetes Datenbanksystem: <Oracle 18.2>

Nach viele Stunden des Probierens und des Suchens, seit ihr nun meine letzte Hoffnung.

Ich möchte, das wenn eine Tabelle nicht in der Datenbank vorhanden ist, neu erstellt wird. Dies ist
ja keine große Sache. Auch den Primary Key setzten und eine Sequence erstellen, alles kein Problem über C#.

Aber wenn ich ein Trigger mit einbauen möchte, der die ID Automatisch hochzählt, will das einfach über C# nicht Funktionieren.

Hier mal ein minimal Beispiel:


CREATE TABLE CUSTOMERS 
(
  ID NUMBER NOT NULL 
, NAME VARCHAR2(20) 
, CONSTRAINT CUSTOMERS_PK PRIMARY KEY 
  (
    ID 
  )
  ENABLE 
);

CREATE SEQUENCE CUSTOMERS_SEQ;

CREATE TRIGGER CUSTOMERS_TRG 
BEFORE INSERT ON CUSTOMERS 
FOR EACH ROW 
BEGIN
  <<COLUMN_SEQUENCES>>
  BEGIN
    IF INSERTING AND :NEW.ID IS NULL THEN
      SELECT CUSTOMERS_SEQ.NEXTVAL INTO :NEW.ID FROM SYS.DUAL;
    END IF;
  END COLUMN_SEQUENCES;
END;
/

Ich lese das SQL Skript mit C# ein, entferne die Leerzeichen und mache ein COMMIT nach jedem ';'
Aber irgendwie will der Trigger nicht. Klar ich kann auch selbst bei jeden Statement ein 'CUSTOMERS_SEQ.NEXTVAL' machen, aber das irgendwie doof.

Ich habe beim Trigger auch mal die ';' entfernt. Dann wird der Trigger zwar in die DB eingespielt, lässt sich aber nicht Kompilieren, da die ';' fehlen.

HILFE... 😉