Mil*_*ian 15 extension-methods naming-conventions .net-3.5
您对名称空间和赞助商类使用了哪些命名约定?(即包含扩展方法定义的类)
是否有标准/推荐的.NET Framework命名约定?("框架设计指南,第2版"一书仅提供了关于不使用的命名空间的指导).
jru*_*ell 13
我没有看到任何官方建议,但我一直在组织我的扩展类,如[NameSpace].[ClassName]扩展:
ProjectName.Web.Util.ControlExtensions
ProjectName.Data.Util.CollectionExtensions
Run Code Online (Sandbox Code Playgroud)
对于命名空间 - 我将重点关注命名空间名称的标准框架准则.将扩展方法放入命名空间中,通常会有意义地使用/关联它们,并避免为此添加额外的命名空间.
对于赞助商类 - 在这种情况下,它是相当不重要的.我会尝试选择一个有意义的类名,但似乎没有固定的指导方针.
但重要的是,赞助商类永远不会被扩展方法的用户直接使用/看到.只要包含名称空间,就可以正确找到扩展方法.我个人使用与jrummell非常类似的东西来扩展我的扩展方法,但是微软并没有在框架中使用它(一个很好的例子就是Enumerable类).