如何在 C# 中创建自定义事件
How to create a custom events in C#
我正在尝试使用 C# wiform 开发应用程序。我只想在互联网连接启动时在 class 中执行 void sendEmail(){}
函数。我使用的方法是 bool checkConnection(){}
函数无限循环 while 循环并将 ping 请求发送到 google.com。如果 ping 成功,sendEmail(){}
函数将由 checkConnection()
函数调用。
但我知道这不是这样做的最佳做法。我对 C# 中的自定义事件感到非常困惑。如何使用自定义事件来完成此任务。期待一个简单解释的答案。
提前致谢
我了解到您正在尝试构建类似于 c# 中的功能的调度程序任务。根据我的理解,windows 服务会为您完成任务,例如监听互联网的可用性,然后在应用程序上线时执行邮件发送操作。
W.R.To 事件,您可以构建自己的事件引擎,该引擎会在应用程序运行时引发应用程序事件,然后会有列出待处理任务的数据库条目。将有一个后台作业,如 windows 服务,它读取数据库并根据互联网的可用性或在某些条件下执行作业。
如果您能更清楚地了解确切的用例以及到目前为止您尝试过的内容,社区可以更好地帮助您。
样本
class 可观察
{
public 事件 ImageUploadeventHandler InternetcOnnected;
public void DoSomething()
{
ImageUploadeventHandler handler = InternetcOnnected;
if (handler != null)
{
handler(this, EventArgs.Empty);
}
}
}
class Observer
{
public void HandleEvent(object sender, EventArgs args)
{
// upload the image to the online service
}
}
我正在尝试使用 C# wiform 开发应用程序。我只想在互联网连接启动时在 class 中执行 void sendEmail(){}
函数。我使用的方法是 bool checkConnection(){}
函数无限循环 while 循环并将 ping 请求发送到 google.com。如果 ping 成功,sendEmail(){}
函数将由 checkConnection()
函数调用。
但我知道这不是这样做的最佳做法。我对 C# 中的自定义事件感到非常困惑。如何使用自定义事件来完成此任务。期待一个简单解释的答案。
提前致谢
我了解到您正在尝试构建类似于 c# 中的功能的调度程序任务。根据我的理解,windows 服务会为您完成任务,例如监听互联网的可用性,然后在应用程序上线时执行邮件发送操作。
W.R.To 事件,您可以构建自己的事件引擎,该引擎会在应用程序运行时引发应用程序事件,然后会有列出待处理任务的数据库条目。将有一个后台作业,如 windows 服务,它读取数据库并根据互联网的可用性或在某些条件下执行作业。
如果您能更清楚地了解确切的用例以及到目前为止您尝试过的内容,社区可以更好地帮助您。
样本 class 可观察 { public 事件 ImageUploadeventHandler InternetcOnnected;
public void DoSomething()
{
ImageUploadeventHandler handler = InternetcOnnected;
if (handler != null)
{
handler(this, EventArgs.Empty);
}
}
}
class Observer
{
public void HandleEvent(object sender, EventArgs args)
{
// upload the image to the online service
}
}