如何将 xamarin 表单应用程序与 oracle 远程数据库 12c 第 2 版连接?

How to connect xamarin forms app with oracle remote database 12c release 2?

我正在开发 xamarin 应用程序,试图将此 xamarin pcl(便携式 class lib)项目与使用 12.2 oracle 数据库的远程数据库服务器连接,我找到了一篇关于将 c# 连接到oracle 数据库服务器基于我的代码如下...

xaml代码:

 <?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             xmlns:local="clr-namespace:datatest"
             x:Class="datatest.MainPage"
             Title="main">
    <StackLayout>
        <Button Clicked="btn_clicked" Text="click me" />
    </StackLayout>

</ContentPage>

c#代码

 using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Xamarin.Forms;
using Oracle.DataAccess.Client;
using System.Data;

namespace datatest
{
    public partial class MainPage : ContentPage
    {
        public MainPage()
        {
            InitializeComponent();
        }
        string oradb = "Data Source=(DESCRIPTION =" + "(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))" + "(CONNECT_DATA =" + "(SERVER = DEDICATED)" + "(SERVICE_NAME = orcl.tdsb.on.ca)));" + "User Id= system;Password=<strong>Patel218</strong>;";


        public void btn_click(object sender,EventArgs e) {

            OracleConnection conn = new OracleConnection(oradb);
            conn.Open();
            if (conn.State == ConnectionState.Open)
            {
                DisplayAlert("connected", "wow", "ok");
            }
            else
            {
                DisplayAlert("sorry", "sorry", "ok");
            }

            // Close and Dispose OracleConnection object  
            conn.Close();
            conn.Dispose();

            if (conn.State == ConnectionState.Closed)
            {
                DisplayAlert("disconnected", "wow", "ok");
            }
            else
            {
                DisplayAlert("sorry", "sorry", "ok");
            }
        }
    }
}

而且我已经仔细检查了所有可能的事情,它仍然要求我输入 system.drawing 和 entity framework 6.0.0,我也尝试输入但它还没有准备好支持某些程序集或某些 NuGet packeges 现在有没有其他方法可以将这种 xamarin 应用程序与远程 oracle 数据库连接起来,该数据库将通过 PC 上的远程服务器在本地使用 INTRANET 连接与应用程序连接。

创建REST服务,不直接连接外部数据库。重新考虑您对安全性的逻辑思考(所有授权信息将在反编译的 android 应用程序中可用)、可伸缩性等..