3

与えられた

public class Blah : IBlah 
{
    public Blah(decimal argument)
    {
    }
}

いつ

ForRequestedType<IBlah>()
    .TheDefault.Is.OfConcreteType<Blah>()
    .WithCtorArg("argument")
    .EqualToAppSetting("argument_app_setting_key")

次に、StructureMapは次の例外をスローします

No Default Instance defined for PluginFamily System.Decimal

文字列以外の引数でEqualToAppSettingを使用する方法はありますか?

4

1 に答える 1

2

EqualToAppSettingメソッドでこれを行うことはできないと思います。System.Configurationを参照して、アプリの設定を自分でキャストするだけではいけませんか?このような...

      ForRequestedType<IBlah>()
        .TheDefault.Is.OfConcreteType<Blah>()
        .WithCtorArg("blah")
        .EqualTo(Convert.ToDecimal(ConfigurationManager.AppSettings["argument_app_setting_key"]));
于 2009-06-17T17:20:18.490 に答える