In deze blog wordt beschreven hoe u een ODBC-verbinding krijgt van .NET op Linux. U kunt .NET gebruiken met elk Easysoft ODBC-stuurprogramma dat beschikbaar is op het Linux-platform. Dit voorbeeldstuurprogramma dat deze blog gebruikt, is de Easysoft ODBC-JDBC Gateway, die converteert tussen ODBC en JDBC, zodat u met Java-gegevens uit .NET kunt werken.
- Als je dit nog niet hebt gedaan, installeer .NET dan volgens de instructies van Microsoft.
- Zorg ervoor dat het bibliotheekpad van uw .NET-machine de map unixODBC/lib bevat. Als u de unixODBC Driver Manager gebruikt die is opgenomen in een Easysoft-stuurprogrammadistributie, moet u ook een symbolische link toevoegen voor
libodbc.so.2
. Bijvoorbeeld:cd /usr/local/easysoft/unixODBC/lib ln -s libodbc.so.1 libodbc.so.2
- Installeer vervolgens het ODBC-gedeelte van .NET:
dotnet add package System.Data.Odbc --version 4.7.0
- Maak een nieuw .NET-programma. Bijvoorbeeld:
dotnet new console --output sample1
- Bewerk Program.cs, en gebruik zoiets als:
using System; using System.Data.Odbc; namespace EasysoftODBCJDBCSample { class Program { static void Main(string[] args) { try { OdbcConnection DbConnection = new OdbcConnection("DSN=OJG"); DbConnection.Open(); OdbcCommand DbCommand = DbConnection.CreateCommand(); DbCommand.CommandText = "select * from MyTable"; OdbcDataReader DbReader = DbCommand.ExecuteReader(); while( DbReader.Read()) { for (int i = 0; i < DbReader.FieldCount; i++) { if (DbReader.IsDBNull(i)) { Console.Write("NULL,"); } else { Console.Write(DbReader.GetValue(i).ToString() + ","); } } Console.WriteLine(); } Console.Write("Data Finished"); DbReader.Close(); DbCommand.Dispose(); DbConnection.Close(); } catch (OdbcException ex) { Console.WriteLine(ex.Message); return; } } } }
In de rij:
OdbcConnection DbConnection = new OdbcConnection("DSN=OJG");
Vervang
OJG
met de naam van uw ODBC-gegevensbron zoals gedefinieerd in deodbc.ini
bestand. - Het voorbeeld uitvoeren:
dotnet run --project sample1