Skip to content

Instantly share code, notes, and snippets.

@pheiberg
Created April 21, 2011 13:56
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save pheiberg/934536 to your computer and use it in GitHub Desktop.
Save pheiberg/934536 to your computer and use it in GitHub Desktop.
Extensions for StructureMap registrations
using StructureMap;
using StructureMap.Configuration.DSL;
public class ExampleRegistry: Registry
{
public ExampleRegistry()
{
For<Interface>().Use<Concrete>()
.Ctor<string>("connectionString").EqualToConnectionString("connectionStringKey");
}
}
using StructureMap;
using StructureMap.Pipeline;
using System.Configuration;
public static class StructureMapExtensions
{
public static SmartInstance<T> EqualToConnectionString<T>(this SmartInstance<T>.DependencyExpression<string> dependencyExpression, string key)
{
string connectionString = ConfigurationManager.ConnectionStrings[key].ConnectionString;
return dependencyExpression.Is(connectionString);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment