views:

110

answers:

1

Hi All,

I have an attribute that I have written that has a dependency on the Data Access Layer so I made a constructor that took the DAL class as a parameter (marked with [DefaultConstructor] and another, blank, constructor that is parameterless. When I call a method that depends on the attribute how do I make StructureMap inject the correct type?

Thanks

Gareth

+1  A: 

I have been working on the same problem, i'm using something like this:

ObjectFactory.Initialize(x =>
{
    x.PullConfigurationFromAppConfig = true;
    x.SetAllProperties(p => p.TypeMatches(t => 
        t.GetCustomAttributes(typeof(InjectAttribute), true).Length > 0));
}       

I am having some issues injecting onto webform pages but it works when creating instances using ObjectFactory...

possan
oh, the issues was resolved by having the InjectAttribute inherit from StructureMap.Attributes.SetterPropertyAttribute
possan