Определить структурную карту конструктора по умолчанию в общем репозитории - PullRequest
6 голосов
/ 03 мая 2010

У меня есть общий IRepository, который имеет 2 конструктора, один из которых не имеет параметров, а другой имеет текст данных в качестве параметра. Я хочу определить, чтобы структура карты всегда в этом случае использовать конструктор без параметров. Мне нужен способ создания безпараметрического конструктора, другие решения, которые я видел, они создают новый Datacontext и передают его конструктору с параметрами.

1 Ответ

4 голосов
/ 20 мая 2010

По умолчанию StructureMap будет использовать конструктор с наибольшим количеством аргументов. В вашем случае, так как вы хотите использовать конструктор без параметров, используйте DefaultConstructorAttribute:

[DefaultConstructor]
public void Repository<T>() { }

public void Repository<T>(DataContext dataContext) { } 
...