데이터베이스를 사용한 리더보드 기능 질문드립니다.

고객님의 문의에 답변하는 직원은 고객 여러분의 가족 중 한 사람일 수 있습니다.
고객의 언어폭력(비하, 조롱, 욕설, 협박, 성희롱 등)으로부터 직원을 보호하기 위해
관련 법에 따라 수사기관에 필요한 조치를 요구할 수 있으며, 형법에 의해 처벌 대상이 될 수 있습니다.

커뮤니티 이용 정책에 위배되는 게시물을 작성할 경우, 별도 안내 없이 게시물 삭제 또는 커뮤니티 이용이 제한될 수 있습니다.

문의 응대 : 평일 오전 10시 ~ 오후 6시
문의를 남기실 경우 다음 항목을 작성해 주세요.
정보가 부족하거나 응대시간 외 문의하는 경우 확인 및 답변이 지연될 수 있습니다.

  • 베이스/채팅/데이터베이스/월드 SDK 버전 :
  • 프로젝트명 :
  • 스테이터스 코드 :
  • 에러 코드 :
  • 에러 메시지 :

뒤끝 개발팀을 통한 별도의 기술지원이 작업이 필요한 요청은 help@backnd.com 으로 문의해주시기 바랍니다.

데이터베이스를 사용한 리더보드에 json 타입으로 현재 캐릭터가 장비한 장착정보를 보내려고하는데 json 타입으로 데이터베이스 Update를 호출했을땐 정상적으로 기입이 되는데 Backend.Leaderboard.User.UpdateMyDataAndRefreshLeaderboard 를 통해 업데이트를 할경우 json 데이터가 올라가지 않는거같아서 Param 처리에 문제가 있나 해서 질문드립니다.

public async UniTask<bool> SubmitGuildBossResult(ulong score)
{
    // 화이트 리스트 유저는 랭킹에 집계하지 않음
    if (BackendManager.Instance.IsWhiteList == true)
        return false;

    // 계정연동이 안된 계정은 랭킹에 집계하지 않음
    BackendLoginType authenticate = PlayerPrefsKey.Auth.LoadObject(defaultValue: BackendLoginType.None);
    if (authenticate == BackendLoginType.None || authenticate == BackendLoginType.Guest)
        return false;

    var findTask = BackendManager.Instance.DBClient.From<BACKND.Database.Guildbossrecord>().FirstOrDefault();

    var findResult = await findTask;

    if (findTask.IsFaulted || findTask.IsCanceled)
        return false;

    //데이터가 없는경우 생성
    if (findResult == null)
    {
        var newData = new Guildbossrecord();

        var insertTask = BackendManager.Instance.DBClient.From<BACKND.Database.Guildbossrecord>().Insert(newData);

        var insertResult = await insertTask;

        if (insertTask.IsCanceled || insertTask.IsFaulted)
            return false;

        findTask = BackendManager.Instance.DBClient.From<BACKND.Database.Guildbossrecord>().FirstOrDefault();

        findResult = await findTask;

        if (findTask.IsFaulted || findTask.IsCanceled)
            return false;
    }

    //데이터 갱신
    if (findResult.Record < score)
    {
        findResult.Record = score;
        findResult.Equipinfo = new UserViewInfo();
        findResult.Equipinfo.Parse(UserGameData.Get().UserBackendData);

        var updateTask = BackendManager.Instance.DBClient.From<BACKND.Database.Guildbossrecord>().Update(findResult);

        var updateResult = await updateTask;

        if (updateTask.IsCanceled || updateTask.IsFaulted)
            return false;

        var attr = typeof(Guildbossrecord).GetCustomAttribute<TableAttribute>();

        if (attr == null)
            return false;

        string tableName = attr?.TableName;


        //Param param = new Param();
        //param.Add("record", findResult.Record);
        //param.Add("extradata", findResult.Equipinfo);

        ////데이터베이스 갱신과 리더보드 갱신이 같이 처리됨
        //var bro = Backend.Leaderboard.User.UpdateMyDataAndRefreshLeaderboard(
        //    BackendManager.Instance.GetServerSetting().guildBossRankUUID,
        //    tableName,
        //    findResult.GetPrimaryKey(),
        //    param);

        //if (bro.IsSuccess() == false)
        //{
        //    return false;
        //}
    }

    return true;

안녕하세요 개발자님,
리더보드 추가항목에 사용되는 데이터의 사용 법을 개발자 문서를 통해 안내드리고 있습니다.

“잘못된 데이터 저장 함수” 부분을 참고 부탁드리며,
Json String으로 변환 후에도 처리되지 않는지 확인하여 주시면 감사하겠습니다.