TLSharp icon indicating copy to clipboard operation
TLSharp copied to clipboard

InvalidCastException: Can not convert an object of type 'TeleSharp.TL.Messages.TLMessagesSlice' to type 'TeleSharp.TL.Messages.TLMessages'

Open carisoftware opened this issue 6 years ago • 3 comments

Hi, i try the history from user using code:

public virtual async Task<string> GetHistorico(string Api_ID, string Api_Hash, string Celular)
        {
            var store = new TLSharp.Core.FileSessionStore();
            var client = new TLSharp.Core.TelegramClient(Convert.ToInt32(Api_ID), Api_Hash, store, "session");

            var normalizedNumber = Celular.StartsWith("+") ?
                Celular.Substring(1, Celular.Length - 1) :
                Celular;

            await client.ConnectAsync();
            var result = await client.GetContactsAsync();
            var user = result.Users
                .OfType<TLUser>()
                .FirstOrDefault(x => x.Phone == Celular);
            TLAbsMessages tlAbsMessages = await client.GetHistoryAsync(new TLInputPeerUser() { UserId = user.Id }, 0, -1, 100);
            var tlMessages = (TLMessages)tlAbsMessages;
            return "";
}

but error de conversion in var tlMessages = (TLMessages)tlAbsMessages;.

How can I turn into records?

carisoftware avatar Feb 27 '18 18:02 carisoftware

Message Error:

System.InvalidCastException HResult = 0x80004002 Message = Can not convert an object of type 'TeleSharp.TL.Messages.TLMessagesSlice' to type 'TeleSharp.TL.Messages.TLMessages'

carisoftware avatar Feb 27 '18 18:02 carisoftware

This is bug of TLSharp or error of my code? if error my code, please, how this correct code ?

carisoftware avatar Mar 01 '18 13:03 carisoftware

+1 it only occurs when there are more messages than the provided limit

RcBuilder avatar Oct 31 '21 20:10 RcBuilder