Хорошо, я знаю, о чем вы думаете, "зачем писать метод, который вы не хотите, чтобы люди использовали?" Правильно?
Ну, словом, у меня есть класс, который нужно сериализовать в XML. Чтобы XmlSerializer
выполнить свою магию, класс должен иметь пустой конструктор по умолчанию:
public class MyClass
{
public MyClass()
{
// required for xml serialization
}
}
Итак, мне нужно иметь его, но я не хочу, чтобы люди его использовали, поэтому есть ли какой-либо атрибут, который можно использовать для обозначения метода как "НЕ ИСПОЛЬЗОВАТЬ"?
Я думал об использовании атрибута Obsolete (поскольку это может остановить сборку), но это просто кажется "неправильным", есть ли другой способ сделать это, или мне нужно идти вперед и укусить пулю?:)
Update
Хорошо, я принял ответ Кейта, так как, полагаю, в глубине души я полностью согласен. Вот почему я задал вопрос в первую очередь, мне не нравится понятие атрибута Obsolete.
Однако...
По-прежнему существует проблема, в то время как мы уведомляемся в intellisense, в идеале, мы хотели бы разбить сборку, так есть ли способ сделать это? Возможно создать пользовательский атрибут?
Более целенаправленный вопрос был создан здесь.