В ТГ Бот Апи нельзя получить по юзернейму Юзер Айди и т.д.
Поэтому придётся немного в проект всунуть ТГ Апи(ТГ Апи и ТГ Бот Апи - разные вещи).
Можешь попробовать библу WTelegram, раз на Шарпе пишешь + тебе так нужно по юзернейму получить данные о юзере.
В офф сайте телеги регаем наше приложение, чтобы получить api_id и api_hash для нашего будущего клиента, который будет через юзернейм добывать данные о пользователе.
Примерный код(надеюсь вы не нулёвый Шарпист):
private static int api_id = 0; //айди клиента с сайта
private static string api_hash = "хэш клиента с сайта";
private static Client client = new Client(api_id, api_hash); //Инициализация клиента
public static async Task<object[]> GetUserIdByUsernameAsync(string username, string token, Client client) //создаём метод, который будет принимать токен бота, клиента и юзернейм, а дальше в проекте просто вызываем этот метод
{
try
{
await client.LoginBotIfNeeded(token);
var user = await client.Contacts_ResolveUsername(username);
object[] userData = { user.User.id, user.User.first_name };
await client.Auth_LogOut();
return userData;
}
catch(Exception exc)
{
Console.WriteLine(exc);
return null;
}
}