我有一个共享类库,它被一个 asp.net Web 应用程序和一个控制台应用程序使用。
在我的网络应用程序的 web.config 中,我在声明的 configSections 中有一个 sectionGroup,然后是匹配的设置。
<configSections>
<sectionGroup name="StockLocator">
<section name="AppSettings" type="StockLocator.ConfigSettings.AppConfig, StockLocator"/>
</sectionGroup>
</configSections>
<StockLocator>
<AppSettings>
<Settings...... />
</AppSettings>
</StockLocator>
当我在 Web 应用程序中读取这些设置时,一切正常。但是,当我将它添加到我的控制台应用程序的 App.config 时,它无法读取这些设置。基本上每当我试图从 App.config 文件中读取任何内容时,我都会收到一个错误"Object reference not set to an instance of an object."
不是很有帮助。
似乎这部分只是没有从 app.config 文件中读取,这让我认为您无法将其添加configSections
到 app.config 文件中?还是有另一种方法来调试它以获得更好的错误消息?
我正在使用代码从 configSections 中读取
<Serializable()> _
Public Class AppConfig
Inherits ConfigurationSection
''' <summary>
''' Initialises and gets AppConfig SiteSettings
''' </summary>
''' <returns></returns>
''' <remarks></remarks>
Public Shared Function getConfig() As AppConfig
Return CType(ConfigurationManager.GetSection("StockLocator/AppSettings"), AppConfig)
End Function
<ConfigurationProperty("Settings")> _
Public Property Settings() As SettingsElement
Get
Return CType(Me("Settings"), SettingsElement)
End Get
Set(ByVal value As SettingsElement)
Me("Settings") = value
End Set
End Property
Public Class SettingsElement
Inherits ConfigurationElement
<ConfigurationProperty("SqlConnName")> _
Public Property SqlConnName() As String
Get
Return CType(Me("SqlConnName"), String)
End Get
Set(ByVal value As String)
Me("SqlConnName") = value
End Set
End Property
End Class
End Class
堆栈跟踪:
在 StockLocator.Model.StockLocatorService.MatchStock(StockLocator_Store 商店) 在 C:\projects\StockLocator\StockLocator\Model\StockLocator.vb:line 421