理解错误报告
本文关键字:报告 错误 | 更新日期: 2023-09-27 18:15:33
谁能帮我理解这个错误报告:
Error: Object reference not set to an instance of an object.
at Project.Web.Config.Data.DataProvider.get_ConfigSettingsConnectionString()
at Project.Web.Config.Data.DataProvider.GetConfigSettings()
at Project.Web.Config.ConfigBase.GetConfigSettings()
at Project.Web.Config.ConfigBase.GetConfigSettingValue(String configName)
at Project.Web.Config.ConfigBase.StringConfigSetting(String configName, String defaultValue)
at Project.Web.Config.Brands.get_BrandsConnectionString()
at Project.Web.Engine.Brands.Data.BrandsDataProvider.GetBrandByHostname(String hostname)
at Project.Web.Engine.Brands.Brands.CurrentBrand()
at Project.Web.Engine.Placeholders.BrandedResource.GetHtmlContent(String resourcePostingName, String resourceName, String cultureCode)
at Project.BWMembership.TranslationHelper.GetTranslation(String sResourcePostingName, String sResourceName, String sCultureCode)
at Project.BWMembership.TranslationHelper.TranslateCountries(ListResponse[] arrCountries, String sCultureCodes)
at ASP.update_aspx.Bind(Member oMembership, Order oOrder) in c:'Projects'Project'zsys_admin'update.aspx:line 82
at ASP.update_aspx.Page_Load(Object sender, EventArgs e) in c:'Projects'Project'zsys_admin'update.aspx:line 58
我知道它告诉我有一个空对象,它来自:
at Project.Web.Config.Data.DataProvider.get_ConfigSettingsConnectionString()
我知道剩下的数据是导致错误
的方法列表我正在尝试确定null对象是什么以及如何解决它。
我知道每一行对应调用一个方法,例如,我可以调用方法:
Project.BWMembership.TranslationHelper.TranslateCountries(ListResponse[] arrCountries, String sCultureCodes)
在我的代码中输入。我知道这个方法在DLL中:
Project.BWMembership
和class:
TranslationHelper
方法被调用:
TranslateCountries(ListResponse[] arrCountries, String sCultureCodes)
但是当我输入:
Project.Web.Config.Data.DataProvider.get_ConfigSettingsConnectionString()
它不识别这个
Visual studio将为我提供以下代码:
Project.Web.Config
但从那里将停止。
是否Config
是一个类名,而Data
是项目中包含的另一个DLL的实例?Web并在此方法中实例化?
如果是这样,我可以假设在这个DLL中有一个叫做DataProvider
的类,它有一个叫做Get_ConfigSettingsConnectionString()
的方法吗?
如果是这样的话,这是否意味着这实际上是在试图找到一些不存在的数据?例如,它正在寻找一个连接字符串,要么不存在于现有的web配置,或正在寻找一个不存在的web配置?
还是Project.Web.Config指的是DLL的配置文件?
这就引出了一系列全新的问题!
没有名为get_ConfigSettingsConnectionString()
的方法,但在DataProvider
类中有一个名为ConfigSettingsConnectionString
的属性(参见此SO答案)。
一般来说,您不能从完整的类型名推断出DLL的确切名称:例如,System.Int32
来自mscorlib.dll
。
现在,你所遇到的错误告诉你的是,在get
部分的属性中有一些东西正在访问null
对象引用