Я попытался написать метод расширения, чтобы взять ulong и вернуть строку, которая представляет предоставленное значение в шестнадцатеричном формате без начальных нулей. Меня не очень порадовало то, что я придумала ... нет ли лучшего способа сделать это, используя стандартные библиотеки .NET?
public static string ToHexString(this ulong ouid)
{
string temp = BitConverter.ToString(BitConverter.GetBytes(ouid).Reverse().ToArray()).Replace("-", "");
while (temp.Substring(0, 1) == "0")
{
temp = temp.Substring(1);
}
return "0x" + temp;
}