ASP.NET 会话变量命名约定

本文关键字:命名约定 变量 会话 NET ASP | 更新日期: 2023-09-27 18:33:26

ASP.NET 中命名会话变量是否有任何约定?

我想到的选项:

Session["myValue"] = "value";
Session["MyValue"] = "value";
Session["my_value"] = "value";
Session["MY_VALUE"] = "value";

ASP.NET 会话变量命名约定

没有任何

正式的命名约定,但您可以考虑使用枚举,这样您就没有任何字符串文字,这 1) 更容易记住密钥的名称和 2) 不会发生运行时错误,因为您的密钥名称中不能有拼写错误。

例如

public enum SessionKey
{
   FirstName,
   LastName,
   BusinessId
}

然后做:

    Session[SessionKeys.FirstName.ToString()] = "Rob";

或者为自己创建一个 SessionHelper 类,使整个过程更加整洁:

public static class SessionHelper
    {
        public static void SetSessionKey(SessionKey sessionKey, object value)
        {
            HttpContext.Current.Session.Add(sessionKey.ToString(), value.ToString());
        }
        public static String GetSessionKey(SessionKey sessionKey)
        {
            return HttpContext.Current.Session[sessionKey.ToString()] as string;
        }
     }
}

IMO,应用 DRY 原则很重要:

public class SessionVariables
{
    public const string MyStoredSessionVariable = "MyStoredSessionVariable";
    ...
}

然后:

Session[SessionVariables.MyStoredSessionVariable] = ...

我认为您使用哪个字符串文字并不重要,只要它足够独特并且您以一致的方式进行,就像其他人提到的那样。

没有什么比约定更像了。这是一个由开发人员共享或由项目团队构建的约定,以便每个人都变得容易。
就像你提到的,我的组织使用大写字母和下划线。

通常,这些约定由团队决定,以保持代码的一致性,但如果假设您正在扩展或自定义现有代码,那么最好遵循现有的编写代码。另一件事是,如果你想决定遵循哪个约定,所以通常遵循常量大写命名约定,否则遵循驼峰符号以获得更好的可读性。

CamelCase 是一个不错的选择。

会话["我的值"] = "值";

骆驼案例参考:

http://en.wikipedia.org/wiki/CamelCase