Issue with Flexible Sync in using SDK for .NET

Please help me integrating my code with the Flexible sync in Unity using realm SDK for .NET. All the tutorials I found used Partition Based sync but now Partition Based sync is deprecated. I keep getting the error-- RealmException: Cannot write to class PlayerData when no flexible sync subscription has been created.

I really need helps.

This is my code:

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Realms;
using System.Linq;
using Realms.Sync;
using MongoDB.Bson;

public class RealmController : MonoBehaviour
{

    public static RealmController Instance;

    [SerializeField] private string _realmAppId = "mongodbtest-utril";

    private Realm _realm;
    private App _realmAPP;
    private User _realmUser;

    //[SerializeField] private string _realmApp = "";

    async void Awake()
    {
        DontDestroyOnLoad(gameObject);
        Instance = this;
        if (_realm == null)
        {
            _realmAPP = App.Create(new AppConfiguration(_realmAppId));
            if (_realmAPP.CurrentUser == null)
            {
                _realmUser = await _realmAPP.LogInAsync(Credentials.Anonymous());
                var config = new FlexibleSyncConfiguration(_realmUser)
                {
                    PopulateInitialSubscriptions = (realm) =>
                    {
                        var myItems = realm.All<PlayerData>().Where(n => n.UserID == _realmUser.Id);
                        realm.Subscriptions.Add(myItems);
                    }
                };
                _realm = await Realm.GetInstanceAsync(config);
            }
            else
            {
                _realmUser = _realmAPP.CurrentUser;
                var config = new FlexibleSyncConfiguration(_realmUser)
                {
                    PopulateInitialSubscriptions = (realm) =>
                    {
                        var myItems = realm.All<PlayerData>().Where(n => n.UserID == _realmUser.Id);
                        realm.Subscriptions.Add(myItems);
                    }
                };
                _realm = await Realm.GetInstanceAsync(config);
            }
        }
    }


    void OnDisable(){
        if(_realm != null){
            _realm.Dispose();
        }
    }

    public bool IsRealmReady(){
        return _realm != null ? true : false;
    }

    public PlayerData GetOrCreatePlayerData()
    {
        PlayerData playerData = _realm.All<PlayerData>().Where(player => player.UserID == _realmUser.Id).FirstOrDefault();
        if (playerData == null)
        {
            _realm.Write(() =>
            {
                playerData = _realm.Add(new PlayerData()
                {
                    UserID = _realmUser.Id,
                    X = 0,
                    Y = 0,
                    Score = 0
                });
            });
        }
        return playerData;
    }

    public void UpdatePosition(Vector2 position){
        PlayerData playerData = GetOrCreatePlayerData();
        _realm.Write(() =>{
            playerData.X = position.x;
            playerData.Y = position.y;
        }); 
    }

    public void IncreaseScore(int value)
    {
        PlayerData playerData = GetOrCreatePlayerData();
        _realm.Write(() => {
            playerData.Score += value;
        });
    }

    public int GetScore()
    {
        PlayerData playerData = GetOrCreatePlayerData();
        return playerData.Score;
    }

    public Vector2 GetPosition(){
        PlayerData playerData = GetOrCreatePlayerData();
        return new Vector2(playerData.X, playerData.Y);
    }