如何使用Xamarin Forms访问Realm云中已有的数据?

时间:2018-04-24 08:47:11

标签: xamarin.forms realm

我正在使用Realm作为我的Xamarin表单App.I已经使用Realm cloud在Sql server中同步了我的数据。现在我想在我的Xamarin Forms App中查看Realm云中的数据。 我用过代码

public ListsViewModel()
{

        LogoutCommand = new Command(Logout);
        AddressCommand = new Command(AddList);
        //TaskLists = new IQueryable<Address>();
        IQueryable<Address> TaskLists = Enumerable.Empty<Address>().AsQueryable();

        //AddList();
    }
private void AddList()
{

        _realm = Realm.GetInstance();

        TaskLists =  _realm.All<Address>();

        TaskLists.Count();


    }

我的 TaskLists.Count()提供 0 。但我的 ROS拥有来自sql server的数据,并且它们都处于同步状态。 我可以通过我的Xamarin Forms App登录我的Realm对象服务器。但是我的Xamarin Forms应用程序没有与我的ROS同步,这是我的Realm对象服务器中的数据没有在我的APP中显示。我想在我的应用程序中显示地址类的数据。地址类的数据通过SQL服务器。< strong>我只需要检索Address类的数据。我甚至尝试使用 SyncConfiguration

private async void AddList()
{
User user = null;
try
{
user = User.Current;
}
catch (Exception ex)
{
HandleException(ex);
}

        if (user == null)
        {
            try
            {
                user = await NavigationService.Prompt<LoginViewModel, User>();
            }
            catch (Exception ex)
            {
                HandleException(ex);
            }
        }
        else
        {
            var uri = user.ServerUri;
            Constants.Server.SyncHost = $"{uri.Host}:{uri.Port}";
        }

        var config = new SyncConfiguration(user, Constants.Server.SyncServerUri)
        {
            ObjectClasses = new[] { typeof(Address) }
        };

        _realm = Realm.GetInstance(config);
        //_realm = Realm.GetInstance();

        TaskLists =  _realm.All<Address>();


        _realm.Write(() =>
        {
            _realm.Add(new Address { ID = 8, ZipCode = "Judson123" });
        });

        TaskLists.Count();


    }

我仍然无法修复它。请帮助我。

0 个答案:

没有答案