当我有一个基类时,变量的 C# 命名约定

本文关键字:变量 命名约定 有一个 基类 | 更新日期: 2023-09-27 18:35:54

我需要一些关于我用于我的应用程序的命名约定的帮助。这是我所拥有的:

public class BaseController : Controller
    {
        public BaseController()
        {
        }
        [Dependency]
        public IContentService _cs { get; set; }
   }

public class ContentsController : BaseController
    {
        public ContentsController(
            IContentService contentService)
        {
            _cs = contentService;
        }

有人可以让我知道我是否应该选择更好的命名约定,以及我设置公开的方式是否正确吗?

更新:

我只在内容控制器中使用_cs。我应该为此使用不同的访问属性吗?它应该在基本控制器中是私有的还是受保护的?

当我有一个基类时,变量的 C# 命名约定

您选择的成员变量命名 (_cs) 不适合公共属性(尽管这实际上是一个偏好问题)。使用以下划线为前缀的"小驼峰大小写"命名通常保留给私有成员(不过,.NET 建议是小驼峰大小写,没有前缀)。公共属性通常应使用大驼峰大小写表示法声明;

public IContentsService ContentsService { get; set;

您可以在此处找到有关命名约定Microsoft建议的信息:http://msdn.microsoft.com/en-us/library/ms229045.aspx

至于你的基控制器类,除非你有一个情况,调用者会实例化 BaseController,而不是更具体的类型(e.gl ContentController),否则将类声明为抽象以明确用法(即,"BaseController"不是直接创建或使用的),并将构造函数声明为"受保护";

public abstract class BaseController
{
    protected BaseController()
    {
        ...
    }
}

最后一个考虑因素是:IContentsService是否属于BaseController?从您的命名来看,似乎只有 ContentController 知道或使用 IContentsService,因此可能将该属性直接移动到 ContentController 类中。

呵。