Это может быть некорректный шаблон проектирования, но я подумал, что хочу попросить, чтобы убедиться, что я делаю это единственно возможным способом.
Это работает:
public static class StuffManager
{
public static readonly StuffDict Stuff = new StuffDict();
}
public class StuffDict : IDictionary<string, string>
{
// custom dictionary stuff
}
Здесь пользователь должен набрать:
string athing = StuffManager.Stuff["key"]
.
Это то, что мне интересно ....
public static class StuffManager : IDictionary<string, string>
{
// custom dictionary stuff
}
Если бы это работало, пользователь вместо этого набрал бы:
string athing = StuffManager["key"]
Я в порядке, если ответ «нет», я просто хочу подтвердить, что второй шаблон либо невозможен, либо плохая идея. Если это уместно, это для использования в качестве своего рода плагина в стороннем приложении, где пользователь будет добавлять мои файлы .cs, а не будет пользователем из того же приложения.
Спасибо.