将json字符串转换为公共ulong

时间:2018-09-07 00:01:48

标签: c# discord.net

我需要使用json文件中的字符串作为ulong,然后在不同的类中使用该变量。我尝试将其解析为一个uint,但是据说公共ulong尚未使用,即使它似乎已经被我习惯了。这可能非常明显,但是我是C#的新手。

myData[index[myIndexes]]; // this works for 1 index, not multiple

2 个答案:

答案 0 :(得分:0)

在您的if块中,您正在声明一个名为whitelistedid的新变量(并且您正在创建一个名为parsed的变量),但是它们从未使用过,并且该方法始终返回{ {1}}。

相反,您可能想要执行以下操作:

0

答案 1 :(得分:0)

在我看来,您实际上只是想从您的静态方法返回ulong,而不是拥有一个公共的静态变量。可能更像...

using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace MinecraftClient
{
    class Utilities
    {
        private static Dictionary<string, string> whitelisted;

        static Utilities()
        {
            string json = File.ReadAllText("whitelists/walls.json");
            var data = JsonConvert.DeserializeObject<dynamic>(json);
            whitelisted = data.ToObject<Dictionary<string, string>>();
        }

        public static ulong GetWhitelisted(string key)
        {
            if (whitelisted.ContainsKey(MinecraftClient.ChatBots.WeeWoo.username))
            {
                ulong parsedId;
                if (UInt64.TryParse(key, out parsedId))
                    return parsedId;                    
            }
            return 0;
        }
    }
}

然后获得您的白名单……

var whileListId = Utilities.GetWhiteListed("someKey");