gpt4 book ai didi

c# - 如何避免以下重复代码?

转载 作者:行者123 更新时间:2023-11-30 20:06:19 24 4
gpt4 key购买 nike

我写了两个看起来很相似的函数,我该如何优化它们?

注意:

1.AsyncCompletedEventArgsDownloadStringCompletedEventArgUploadStringCompletedEventArgs的基类。

2.Result 属性不在 AsyncCompletedEventArgs 中。

3.DownloadStringCompletedEventArgs有一个Error属性,如果Errornull,则尝试访问Result 属性,异常发生。

void fun1(DownloadStringCompletedEventArgs e)
{
try
{
string s = e.Result;
}
catch (WebException eX)
{
HandleWebException();
}
}

void fun2(UploadStringCompletedEventArgs e)
{
try
{
string s = e.Result;
}
catch (WebException eX)
{
HandleWebException();
}
}

最佳答案

您的代码可能会更改为如下所示:

    void fun1(DownloadStringCompletedEventArgs e) { Process(e); }

void fun2(UploadStringCompletedEventArgs e) { Process(e); }

private void Process(dynamic eventArgs)
{
try
{
string s = eventArgs.Result;
}
catch (WebException e)
{
HandleWebException(e);
}
}

关于c# - 如何避免以下重复代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9942240/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com