我有一个棘手的问题困扰了我一段时间。我有以下代码声明...
namespace ESEGURCI.WEB.BusinessLogicLayer.Commons
{
public static class ParameterUtilities
{
public enum ParameterEnum
{
MAX_LOGIN_ATTEMPTS,
AUDIT_MODIFICATIONS
}
}
}
我这样称呼代码“ ParameterUtilities.ParameterEnum.MAX_LOGIN_ATTEMPTS ”问题是每个满月我都会在这一行收到错误“对象引用未设置为对象的实例”......就像代码只能工作99.9%的时间...
我唯一想到的是,由于枚举是一种值类型,因此当调用静态类时枚举有可能为空......但我找不到任何关于这种行为的文档......
有人能告诉我为什么会这样吗?我知道我可能应该从静态类中删除枚举,并将枚举声明为独立的,但我想知道为什么会首先发生这种情况......
谢谢,
更新
好的,对于要求更多代码的每个人,以下是发生错误的完整功能......
public static int GetPageSize(int companyId)
{
int pageSize = 0;
// error happens bellow this line
ESEGURCI.WEB.BusinessLogicLayer.Entities.Parameter parameter = ESEGURCI.WEB.BusinessLogicLayer.Entities.Parameter.GetParameter(ParameterUtilities.ParameterEnum.AUDIT_MODIFICATIONS.ToString(), companyId);
// error happens above this line
int.TryParse(parameter.Value, out pageSize);
return pageSize;
}