C# Xamarinでは、Oracle.ManagedDataAccess.Coreを利用すれば、Android端末からOracleデータベースのデータを取得することができます。
本来、Oracle等のデータベースにAndroid端末から接続する場合は、WebAPI経由が推奨されることが多いです。
しかし、社内等のローカルネットワーク内で小規模であれば、直接DBに接続する方法も一つの手段となります。
以下は、XamarinでAndroid端末からOracleデータベースに接続する実装例です。
(iOSも同様かもしれませんが、未確認です。)
実装手順
1. NuGetパッケージをインストール
まず、NuGetパッケージマネージャーでOracle.ManagedDataAccess.Coreパッケージをインストールします。
このパッケージは、Oracle Databaseに高速にアクセスできるADO.NETドライバーです。
Oracle Clientのインストールは不要です。
- Oracle.ManagedDataAccess.Core
2. Oracleデータベースへの接続例
以下のコードは、Oracle Databaseに接続して、EMPテーブルから従業員の名前と給与を取得するものです。
簡単に試す場合は、XamarinではViewのコードビハインド(Prismを利用する場合は、ViewModel)に記載すればよいです。
Oracleの接続文字列は、接続対象のOracleサーバー(Android端末がWifi接続しているローカルネットワーク内に存在するDBサーバー)に合わせて変更して下さい。
Oracle接続の設定が正しいのにも関わらず接続不可の場合、Oracleサーバー(PC)のファイアウォール設定で、受信の規則からポート1521を解放していない可能性も考えられます。確認してみて下さい。
これらの手順で、Android端末からOracleデータベースに直接接続する事ができます。