在 Xamarin.Forms 中使用 SqlConnection?

Using SqlConnection in Xamarin.Forms?

我可以在 Xamarin.Forms 中使用 SqlConnection 吗?

我倾向于在 Windows 和 Visual Studio 开发的 Web 应用程序中使用它,但我不知道它在 Xamarin 中如何工作。

我得到 namespace name does not exist with using System.Data.SQLClient;,即使在添加引用 Mono.Data.SqliteSystem.Data.

之后也是如此
        SqlConnection conn = new SqlConnection(ConnectionString);
        SqlDataAdapter da = new SqlDataAdapter();
        SqlCommand cmd = conn.CreateCommand();
        cmd.CommandText = SQL;
        da.SelectCommand = cmd;
        DataSet ds = new DataSet();

        conn.Open();

        da.Fill(ds);
        conn.Close();

可以使用此代码片段还是需要以其他方式完成?

我正在将代码添加到属于 Xamarin.Forms 项目的 class。

无法建立 SQL 连接。一般情况下,Xamarin 支持的平台不支持传统数据库(SQLite 除外,如果你可以在里面算的话),所以这样的连接是没有意义的。

如果您想在 Xamarin 中连接到真实的数据库,这些数据库必须具有 Web 界面。同样,这不是 Xamarin 限制,而是几乎所有受支持平台的限制。

  1. 右键单击您的项目,
  2. Select Nuget 包
  3. 寻找“System.Data.SqlClient
  4. 安装它 你现在可以走了。

我没有在 Xamarin.Forms 中尝试过,只在 Xamarin.Android 中尝试过,我发现使用一个简单的技巧是可行的。 首先,我尝试将 NuGet 包 System.Data.SqlClient 直接添加到 Android 项目但没有成功,但都没有添加“使用 System.Data.SqlClient;”我可以创建一个 SqlConnection obj。 我解决了将新的标准 2.0 库项目和上面的 NuGet 包添加到第二个项目并在这个项目中创建所有连接 类 然后添加到第一个 Android 项目的添加 -> 参考和指向图书馆,一切正常。

对于 Xamarin,您似乎需要在参考资料中更上一层楼 - 右键单击 Reference>Add References - 向下滚动到 System.Data 并选中该框(单击 OK)。错误应该消失了。