Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否可以将xamarin表单连接到在线数据库?_Xamarin_Xamarin.forms_Xamarin.android - Fatal编程技术网

是否可以将xamarin表单连接到在线数据库?

是否可以将xamarin表单连接到在线数据库?,xamarin,xamarin.forms,xamarin.android,Xamarin,Xamarin.forms,Xamarin.android,我有xamarin表单,我想将其连接到在线数据库(postgresql)(digitalocean) 您是否有用于部署的文档(逐步)?(xamarin.form(IOS和android))数据库是postgresql,它与.NET Core 3.0、.NET Standard 2.0/2.1和.NET Framework 4.6.1兼容,因此从技术上讲,从应用程序连接到Postgres数据库应该没有问题。Npgsql实现ADO.NET模式。例如,要从表users(非常基本示例)中读取用户,您可以

我有xamarin表单,我想将其连接到在线数据库(postgresql)(digitalocean)

您是否有用于部署的文档(逐步)?(xamarin.form(IOS和android))数据库是postgresql,它与.NET Core 3.0、.NET Standard 2.0/2.1和.NET Framework 4.6.1兼容,因此从技术上讲,从应用程序连接到Postgres数据库应该没有问题。Npgsql实现ADO.NET模式。例如,要从表
users
非常基本示例)中读取用户,您可以执行以下操作:

使用(var连接=新的NpgsqlConnection(connectionString))
{
使用(var command=connection.CreateCommand())
{
command.CommandText=“从用户中选择id、名称”;
使用(var reader=command.ExecuteReader())
{
while(reader.Read())
{
变量id=(长)读卡器[“id”];
变量名称=(字符串)读取器[“名称”];
//用价值观做点什么
}
}
}
}
无论如何,正如评论中所述,这是一种不好的做法,应该避免。你的数据库将是公开的,任何能够获得密码的人都可以搞乱它。我还没有对此进行验证,但我认为从编译后的应用程序(至少在Android上)恢复密码应该不会太难,这将是一个严重的安全问题

可能有星座的影响会稍微不那么严重,但无论如何我还是会避免这种情况


您应该真正创建一个web服务(不一定必须是REST服务)来访问您的数据库。此服务封装所有数据库访问,并允许细粒度授权来访问资源(例如,如果需要,使用具有完全访问权限或只读访问权限的角色)。

您不应将数据库服务器直接暴露于外部。让任何东西通过服务(f.i.REST API)与数据库进行通信。你有关于此的文档吗?关于什么的文档?我已经有在线数据库,我想将其连接到xamarin.form,但我不知道如何连接,这就是为什么我要求提供文档这里有一个关于ASP.NET WebAPI(用于HTTP webservices)的教程:
string ConnectionString = "Server=******; Port=5432;User Id=postgres; Password=******; Database=Accounting";