-1

我使用 C# 扩展方法已经有一段时间了,我发现它们非常方便。但是我不确定使用它们的最理想情况是什么,我觉得有时我滥用它们。你什么时候推荐使用扩展方法?

4

1 回答 1

1

IMO 当它真的是一个扩展(而不是核心/关键操作),或者它是一个捷径时。

一个扩展的例子:

通常在沙盒应用程序中(当然它也可以在真实应用程序中使用)是IEnumerable通过一种Print方法进行扩展的。

print 方法不应该存在(也就是说:它不应该是IEnumerable类的一部分),但它有助于并使语法更容易和更清晰。此外,您可能不希望将库作为该类的一部分提供。

快捷方式示例:

我发现自己经常创建的另一件事是带有容器的对象的辅助扩展。而不是调用Items.Add和类似的,我只是做一个AddItem扩展方法。


需要考虑的是,它只是语法糖,也就是说,它是为你——开发者准备的。因此,对于 .NET 类型等,当您认为这是一个好主意并且会使事情变得更清洁时,请使用它。

当谈到“这个方法应该是扩展还是成员?” 请参阅此答案中的第一句话,并在此处此处查看更多信息。

于 2013-03-03T17:45:15.100 回答