.net - 回调方法 C#

标签 .net c#-4.0

我需要为我的 Commit 方法创建一个回调方法,以便知道它何时完成。 所以任何人都知道如何做到这一点,我怎样才能调用提交,然后订阅回调事件/方法以在完成后做其他事情。

最佳答案

通常,在 C# 中,您可以通过 event 来完成此操作.处理此问题的最常见方法是使用 Event-based Asynchronous Programming model .按照惯例,这会将您的 API 定义为:

public void YourMethodAsync() {}  // starts your method
public Event EventHandler<YourEventArgs> YourMethodCompleted; // Event used to receive completion notification

也就是说,如果您正在为 .NET 4 进行开发,您可能需要考虑围绕 Task 设计您的方法。或 Task<T>类,而不是。您可以返回 Task 而不是创建回调直接地。这允许您的用户创建一个在操作完成时运行的任务延续。此外,C# 的 future 版本将允许用户利用当前 CTP 形式的 awaitasync 关键字来简化开发。

关于.net - 回调方法 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5652314/

相关文章:

.net - 在 VB.NET 中使用正则表达式从字符串中解析数字

c# - 我应该使用 MySQL Connector/ODBC 还是 System.Data.Odbc?

c# - SeDebugPrivilege() api 函数是否与 System.Diagnostics.Process.EnterDebugMode 相同?

.net - 如何为 ASP.NET 4 的某些文件夹禁用 ssl?

.net - 通过 NuGet 提供命令行工具以在 Visual Studio 中的生成后事件中使用

c# - 返回数据时使用 Statement

wpf - 如何在标签中添加换行符

c# 反射返回 "Nullable` 1"

.net - Windows 服务未启动 : "The service is not responding to the control function."

c# - 执行责任链变化