зарегистрировать конкретный тип с параметром ctor, используя структурную карту - PullRequest
0 голосов
/ 31 июля 2011

Мне нужно зарегистрировать все конкретные типы определенного интерфейса с помощью structmap

Проблема, с которой я столкнулся, заключается в том, что эти конкретные типы просто имеют ctor с примитивными параметрами, и эти параметры будут динамически отличаться

public interface IPropertyType 
{
    string PropertyName { get; set; }

    string DisplayName { get; set; }

}

 public abstract class PropertyTypeBase :  IPropertyType
{

    public PropertyTypeBase(string propertyName, string displayName)
    {
        PropertyName = propertyName;
        DisplayName = displayName;
    }
}


 public class StringType : PropertyTypeBase
{

    public StringType(string propertyName, string displayName)
        : base(propertyName,displayName)
    {
       //do sth
    }

}

все конкретные типы, такие как StringType , имеют эти 2 параметра, которые отличаются друг от друга, и они будут объявлять во время выполнения, как я могу зарегистрировать все эти типы

1 Ответ

0 голосов
/ 02 августа 2011

Учитывая тот факт, что оба свойства являются публичными get и set, я бы удалил их из вашего конструктора.Я не вижу никакой причины, почему вы хотели бы, чтобы они были введены, поскольку они не являются зависимостями и могут быть впоследствии сброшены.

...