我在一个Module
中声明了两个Public
字典,如下所示:
Module Globals
Public buttonImagesEnabled As Dictionary(Of Integer, Image)
Public buttonImagesDisabled As Dictionary(Of Integer, Image)
End Module
然后在Form
:的构造函数中对其进行初始化
Public Class myForm
Public Sub New()
' This call is required by the designer.
InitializeComponent()
' Add any initialization after the InitializeComponent() call.
buttonImagesEnabled = New Dictionary(Of Integer, Image)
buttonImagesDisabled = New Dictionary(Of Integer, Image)
End Sub
End Class
该解决方案构建良好,但当我尝试运行它时,我得到了一个异常(在表单构造函数中指定New Dictionary
的行(:
系统。TypeInitializationException:'的类型初始值设定项'我的解决方案。Globals"引发异常。">
InnerException#1
{配置系统未能初始化
InnerException#2
{"无法识别的配置节system.diagnostics。(…ProjectPath.MySolution.dll.config第8行("}
检查了.dll.config文件,它只是一个<system.diagnostics>
XML标记(XML的其余部分对我来说很好(
如果我将Public
声明移动到Form
中(并从Module
中移出(,它运行良好,但我无法访问任何类的字典(即,在类中引用它们会产生错误ála:
未声明"buttonImagesEnabled"。由于以下原因,它可能无法访问其保护级别。
我是不是遗漏了一些显而易见的东西?
好吧,看起来这与字典无关,也与它们的声明无关——app.config
文件不知怎么搞砸了。
这里的解决方案是:。NET Core-在App.config中使用system.diagnostics解决了问题(手动将<system.diagnostics>
configSection
插入XML(
为什么是Visual Studio/。NET核心插入部分,但没有声明,自动,对我来说是荒谬的!