문제

주어진

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

비 스트링 인수와 동등한 대회를 사용하는 방법이 있습니까?

도움이 되었습니까?

해결책

나는 당신이 평등 한 appsetting 메소드로 이것을 할 수 있다고 생각하지 않습니다. 시스템 만 참조 할 수 없을 수 있습니까? 구성 및 앱 설정을 직접 캐스트 할 수 있습니까? 이와 같이...

      ForRequestedType<IBlah>()
        .TheDefault.Is.OfConcreteType<Blah>()
        .WithCtorArg("blah")
        .EqualTo(Convert.ToDecimal(ConfigurationManager.AppSettings["argument_app_setting_key"]));
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top