我在app.config文件中为.NET 2.0控制台应用程序提供了重复的键/值对时偶然发现了这一点。 令我惊讶的是,它工作,应用程序读取最新的一对。 当我试图找出为什么我无法获取正确的键值时,我正在拉我的头发(因为我没有意识到一个类似的键,旧的值在配置文件中更低)。
配置文件示例:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="key1" value="val1"/>
<add key="key1" value="val2"/>
</appSettings>
</configuration>
我的问题:框架是否通过在启动期间抛出异常或者在编译期间发出警告来强制执行唯一密钥并不是“更好”?
注意:我们当然不能对框架行为做很多事情,只想获得一些反馈。