Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 电报防汛_C#_Api_Telegram_Telegram Api - Fatal编程技术网

C# 电报防汛

C# 电报防汛,c#,api,telegram,telegram-api,C#,Api,Telegram,Telegram Api,有这样一个问题:我运行了很多次程序,现在它抛出了以下错误FloodException:Flood prevention。电报现在要求您的程序仅在73611秒过后才再次执行请求(TimeToWait属性)。如果您认为这个问题的罪魁祸首可能在于TLSharp的实现,请打开一个Github问题。 我附上以下代码: 使用系统; 使用系统文本; 使用System.Windows.Forms; 使用TeleSharp.TL; 使用TeleSharp.TL.Messages; 使用TLSharp.Core;

有这样一个问题:我运行了很多次程序,现在它抛出了以下错误FloodException:Flood prevention。电报现在要求您的程序仅在73611秒过后才再次执行请求(TimeToWait属性)。如果您认为这个问题的罪魁祸首可能在于TLSharp的实现,请打开一个Github问题。 我附上以下代码:

使用系统;
使用系统文本;
使用System.Windows.Forms;
使用TeleSharp.TL;
使用TeleSharp.TL.Messages;
使用TLSharp.Core;
名称空间tgBM
{
公共部分类Form1:Form
{
字符串电话;
字符串代码;
int n=1;
StringBuilder sb=新的StringBuilder();
电报客户端=新电报客户端(2646156,“08ec188e0bdee432e568120348f5f13a”);//使用参数创建客户端
公共表格1()
{
初始化组件();
}
字符串str=“”;
公共异步void authAsync()
{
var dialogs=(TLDialogs)等待client.GetUserDialogsAsync();
foreach(dialogs.Chats中的var元素)
{
TLChat=元素作为TLChat;
if(元素为TLChannel)
{
var偏移=0;
TLChannel=元素作为TLChannel;
如果(channel.Title==“TOPLES”)
{
TLChannel ch=元素作为TLChannel;
TLInputPeerChannel inputPeer=new TLInputPeerChannel(){ChannelId=ch.Id,AccessHash=(long)ch.AccessHash};
而(n!=11)
{
尝试
{
TLChannelMessages res=wait client.SendRequestAsync
(新的TLRequestGetHistory(){Peer=inputPeer,Limit=20,AddOffset=offset,OffsetId=0});
var msgs=恢复消息;
如果(分辨率计数>偏移量)
{
偏移量+=msgs.计数;
foreach(msgs中的TLAbsMessage msg)
{
如果(消息为TLMessage)
{
TLMessage message=msg作为TLMessage;
str+=n.ToString()+“\t”+message.Id+“\t”+message.FromId+“\t”+message.message+Environment.NewLine;
}
如果(消息是TLMessageService)
继续;
n++;
}
}
其他的
打破
}
捕获(例外情况除外)
{
MessageBox.Show(例如Message);
打破
}
}
}
}
textBox3.Text=str;
}
}
私有异步无效按钮1\u单击(对象发送方,事件参数e)
{
phone=textBox1.Text;
wait client.ConnectAsync();//建立连接
var hash=await client.SendCodeRequestAsync(电话);
}
私有异步无效按钮2\u单击(对象发送方,事件参数e)
{
代码=textBox2.Text;
var user=wait client.MakeAuthAsync(电话,wait client.SendCodeRequestAsync(电话),代码);
authAsync();
}
}
} 

看起来您发送的消息太多了。是的,确实如此,但在测试过程中,我总是多次运行该程序。所以我不知道该怎么办。单元测试是一个在不干扰内部服务的情况下测试应用程序的好主意。看起来您发送了太多消息。是的,是的,但在测试过程中,我总是多次运行该程序。所以我不知道该怎么做。单元测试是一个测试应用程序的好主意,而不必麻烦内部服务。