我是一名新的Xamarin开发人员,我现在正致力于需要数据库来存储应用程序数据的简单应用程序。
我的需求: 简单的应用程序,MVVM设计模式,一个开发。 该应用程序需要在IOS和Android
中工作我的解决方案结构:
Xamarin.Forms PCL项目(包含视图,ViewModel,模型,服务)
Xamarin.Droid - 默认的Xamarin Android项目。
Xamarin.IOS - 默认的Xamarin IOS项目。
我想使用 NoSQL数据库。 我知道MongoDB,这是一个很好的。 但是在谷歌搜索之后,没有任何教程可以将MongoDB与Xamarin.Forms PCL项目一起使用。
所以,我的问题:
可以将MongoDB与Xamarin.forms一起使用吗?
(如果(1)的答案是"是") - 真的建议将MongoDB与Xamarin.Forms PCL项目一起使用?
(如果(2)的答案是"否") - 在我的案例中,最好的NoSQL数据库选项是什么?
注意: 我已经尝试过使用这篇文章了: http://www.c-sharpcorner.com/UploadFile/093731/xamarin-with-mongodb/
但不行。
我正在使用: Visual Studio 2017 ,Xamarin.Forms(2.3.4.247)。
非常感谢!
答案 0 :(得分:4)
Xamarin Forms PCL与MongoDB无关。您需要一个服务来访问MongoDB或任何其他数据库。理想情况下,您可以使用RESTful服务来访问数据库
您介绍的文章介绍了如何通过Web API访问MongoDB(它是一个RESTful Web服务)。你唯一需要担心的是Xamarin,如何在pcl中调用web api。再次根据您的文章,他们使用HttpWebRequest访问web api(您可以使用不同的客户端,如httpclient,restsharp等来执行此操作)。
顺便说一下,您需要使用nuget(https://www.nuget.org/packages/MongoDB.Driver/)将Mongodb驱动程序添加到您的web api项目中。
似乎你没有正确地将驱动程序安装到web api项目。我也不知道MongoCollection是他们为保留db实例而创建的自定义模型类。
答案 1 :(得分:4)
如果您正在寻找可与Xamarin PCL配合使用的NoSQL 离线数据库,您可以使用LINQ通过模型和查询进行访问。
Realm可能就是你要找的东西:
import '../css/styles.css'
要直接使用MongoDB,您需要创建一个使用REST
发布数据的API答案 2 :(得分:0)
您需要创建REST服务器并通过Nodejs或Asp.Net核心应用程序使用Restful服务。