在C#中,Callback的最佳實踐是使用委托(delegate)或事件(event)來實現。以下是一些關于Callback的最佳實踐:
示例:
public delegate void MyCallback(string message);
public void PerformActionWithCallback(MyCallback callback)
{
// 執行某些操作
callback("Operation completed");
}
// 調用方法并傳遞回調方法
PerformActionWithCallback((message) =>
{
Console.WriteLine(message);
});
示例:
public event EventHandler<MyEventArgs> MyEvent;
public void PerformActionWithCallback()
{
// 執行某些操作
OnMyEvent(new MyEventArgs("Operation completed"));
}
protected virtual void OnMyEvent(MyEventArgs e)
{
MyEvent?.Invoke(this, e);
}
// 訂閱事件并提供回調方法
myObject.MyEvent += (sender, e) =>
{
Console.WriteLine(e.Message);
};
無論是使用委托還是事件來實現Callback,都應保持代碼清晰、易于理解和維護。另外,應該考慮處理異常和錯誤情況,確保回調方法能夠正常執行。