我在从App.config读取时遇到问题。
这是我的App.config:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Configuration;
namespace Interest
{
public class InterestRate_A : ConfigurationElement
{
[ConfigurationProperty("band", IsRequired = true)]
public string Band
{
get
{
return this["band"] as string;
}
}
[ConfigurationProperty("validFrom", IsRequired = true)]
public string ValidFrom
{
get
{
return this["ValidFrom"] as string;
}
}
[ConfigurationProperty("validTo", IsRequired = true)]
public string ValidTo
{
get
{
return this["validTo"] as string;
}
}
[ConfigurationProperty("rate", IsRequired = true)]
public string Rate
{
get
{
return this["rate"] as string;
}
}
}
public class InterestRates_A : ConfigurationElementCollection
{
public InterestRate_A this[int index]
{
get
{
return base.BaseGet(index) as InterestRate_A;
}
set
{
if (base.BaseGet(index) != null)
{
base.BaseRemoveAt(index);
}
this.BaseAdd(index, value);
}
}
public new InterestRate_A this[string responseString]
{
get { return (InterestRate_A)BaseGet(responseString); }
set
{
if (BaseGet(responseString) != null)
{
BaseRemoveAt(BaseIndexOf(BaseGet(responseString)));
}
BaseAdd(value);
}
}
protected override System.Configuration.ConfigurationElement CreateNewElement()
{
return new InterestRate_A();
}
protected override object GetElementKey(System.Configuration.ConfigurationElement element)
{
return ((InterestRate_A)element).Band;
}
}
public class InterestRates_A_Configuration : ConfigurationSection
{
public static InterestRates_A_Configuration GetConfig()
{
return (InterestRates_A_Configuration)System.Configuration.ConfigurationManager.GetSection("InterestRates_A") ?? new InterestRates_A_Configuration();
}
[System.Configuration.ConfigurationProperty("InterestRates_A")]
[ConfigurationCollection(typeof(InterestRates_A), AddItemName = "InterestRate_A")]
public InterestRates_A InterestRates_A
{
get
{
object o = this["InterestRates_A"];
return o as InterestRates_A;
}
}
}
}
这是我的代码:
foreach (var item in config.InterestRates_A)
{
}
这就是我所说的:
object Test {
@inline def unapply(i: Int): Option[String] =
i match {
case 1 => Some("Got 1")
case 2 => Some("Got 2")
case 3 => throw new Exception("Should not test 3")
case _ => None
}
def test(i: Int) = i match {
case Test(k) => k
case 4 => "Another 4"
case _ => ""
}
}
Test.test(3)
问题在于它根本找不到该部分。我在这里错过了什么?提前感谢所有需要时间帮助我的人!
PS:一旦我将听到的声音包裹起来,我还想添加更多配置部分。
答案 0 :(得分:0)
如果没有对代码进行详细检查,看起来您的部分类型没有正确定义,请像type="Interest.InterestRates_A_Configuration"
顺便说一句,您最好阅读这篇深入的文章,其中涵盖了您现在需要的.net配置。