如何使用 Azure SQL 数据库制作 Xamarin Android 应用程序

How to make Xamarin Android Apps with Azure SQL Databases

我刚刚开始攻读计算机科学学位的第三年,我真的很喜欢制作 ASP.Net 网站,但现在我有兴趣学习 Xamarin Android 应用程序并制作这些应用程序数据库可作为 Azure SQL database.

我学会了制作 Azure SQL Database 并使用 SSMS 制作表格并在本地开发 ASP.NET 并将它们部署在 Azure 中,我认为它可能是与 Xamarin 相同,但显然,我错了。所以这是我的问题,如果有人能帮助我,那就太好了。

1) 为什么我不能在 Xamarin.Android's cs 类 中使用 SqlConnecton 类?
2) 是否有其他方法可以使移动应用程序与 ASP.NET 应用程序完全不同?
3) 是否可以对 ASP.NET WebApp 和 Xamarin.Android App 使用相同的 Azure SQL DB

提前致谢

最好的方法是通过 Web 服务,您可以按照此 WCF tutorial

正在尝试回答您的问题:

1) 为什么我不能在 Xamarin.Android 的 cs 类 中使用 SqlConnecton 类?

移动应用不是为 运行 常见的数据库引擎设计的,例如 SQL 服务器、Oracle 等。因为它们会消耗大量资源和电力。想象一下,您正在连接这些工具中的任何一个,它们肯定会在几 minutes/hours 内耗尽电池电量。这就是为什么如果您真的想要一个离线数据库或类似的东西,您可以选择 SQLite.

作为 Xamarin 开发人员,如果您必须拥有数据库,我向您推荐 SQLite 的这个包:

SQLite-NET-PLC

2) 是否有其他方法可以使移动应用程序与 ASP.NET 应用程序完全不同?

是和不是,我的意思是,您可以使用 WCF(Windows Communication Foundation)、Generic Handlers 等。主要思想是您需要创建一个 Web 服务,它是 "link",您可以从您的应用程序访问,例如:

维基百科API:

这个例子 return 是 Stack Overflow 的 JSON 你可以对任何在线数据库做同样的事情 return table/view 你想要在 JSON/XML 格式,您可以使用 Json2CSharp

等工具将答案转换为 C# 类

最后,您可以使用 JSON.NET

这样的库将 JSON 反序列化为 C#

3) 是否可以对 ASP.NET WebApp 和 Xamarin.Android 应用程序使用相同的 Azure SQL 数据库?

是的,你可以。许多网站和应用程序共享同一个数据库,您只需要考虑 Web 服务方法即可从您的应用程序进行连接、更新、删除等操作。