我知道已经有一个帖子,几乎描述了相同的内容,但我认为我的略有不同。
我想知道的是你如何组织你的扩展方法来分配命名空间。目前,对于我们框架中的扩展方法,我使用以下命名空间模式:
- MyCompany.Web.Utils
在其中我有扩展方法类。这对我来说很好,缺点是扩展程序员不能立即看到扩展器。考虑这样一个情况,我有一个StringExtender类,提供一个非常方便的扩展方法"In"来扩展String对象。如果把扩展方法放在上述命名空间中,除非他们显式包含其命名空间,否则我们的程序员将无法看到扩展方法。相反,如果我将扩展方法放在System命名空间中,每个人都能立即看到它,但我已经读到这是不好的实践方式。
所以我的问题是,你如何推广你的扩展方法,使它们被开发人员使用。