Ich bin Anfänger über Web-Programmierung und ich habe ein Problem mit Oracle DB-Verbindung. Mein Code funktioniert gut mit Mssql, aber es funktioniert nicht mit Oracle. Ich möchte db zu Oracle von mssql ändern. Ich habe odac heruntergeladen. Hier ist meine SqlOperations-Klasse.Oracle Datenbankverbindung
using System;
using System.Collections.Generic;
using System.Data;
using Oracle.DataAccess;
using System.Data.OracleClient;
using System.Data.Odbc;
using System.Linq;
using System.Web;
namespace BagciEmlak
{
public class SqlOperations
{
OracleConnection con;
OracleCommand cmd;
OracleDataAdapter sda;
DataTable dt;
public OracleConnection OracleConnect()
{
try
{
con = new OracleConnection ("Data Source=SYS-CDB12c; User ID=HR; Password=hr; Unicode=true;");
con.Open();
return con;
}
catch (OracleException e)
{
throw;
}
}
public int Command(string ConStr, OracleConnection conn)
{
try
{
cmd = new OracleCommand(ConStr, conn);
return cmd.ExecuteNonQuery();
}
catch (Exception e)
{
throw;
}
finally
{
cmd.Dispose();
conn.Close();
conn.Dispose();
}
}
public DataTable GetDataTable(string ConStr, OracleConnection conn)
{
try
{
dt = new DataTable();
sda = new OracleDataAdapter(ConStr, conn);
sda.Fill(dt);
return dt;
}
catch (Exception e)
{
throw;
}
finally
{
sda.Dispose();
conn.Close();
conn.Dispose();
}
}
public DataRow GetDataRow(string ConStr, OracleConnection conn)
{
dt = GetDataTable(ConStr, conn);
if (dt.Rows.Count==0)
{
return null;
}
else
{
return dt.Rows[0];
}
}
public string GetDataCell(string ConStr, OracleConnection conn)
{
dt = GetDataTable(ConStr, conn);
if (dt.Rows.Count == 0)
{
return null;
}
else
{
return dt.Rows[0][0].ToString();
}
}
}
}
und hier ist mein webconfig Code:
<connectionStrings>
<add name="{ConnectionName}"
connectionString="Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=MyHost)(PORT=MyPort)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=MyOracleSID)));User Id=HR;Password=HR;"
providerName="Oracle.DataAccess.Client"/>
</connectionStrings>
So falsch was innerhalb können Sie mir helfen
Wird ein Fehler angezeigt? Erhalten Sie unerwartete Ergebnisse? –
Wenn ich kompiliere gibt es keinen Fehler, aber in Chrome habe ich gesehen, dass: Server Fehler in '/' Anwendung. Die Datei 'Oracle.DataAccess' oder eine ihrer Abhängigkeiten konnte nicht geladen werden. Es wurde versucht, ein Programm mit einem falschen Format zu laden. –
'System.Data.OracleClient' ist veraltet. Benutze es nicht. Verwenden Sie den [Oracle Managed Client] (https://www.nuget.org/packages/Oracle.ManagedDataAccess/). Und speichern Sie Ihre [IDiposable] (https://msdn.microsoft.com/en-us/library/system.idisposable (v = vs.110) .aspx) (OracleConnection) -Objekte nicht als Felder. Und warum verwenden Sie DataTable anstelle von stark typisierten Objekten? – mason