Доступ к частному конструктору извне класса в C#C#

Место общения программистов C#
Anonymous
 Доступ к частному конструктору извне класса в C#

Сообщение Anonymous »

Если я определяю класс с частным конструктором по умолчанию и публичным конструктором, который имеет параметры, как я могу получить доступ к частному конструктору? < /p>

Код: Выделить всё

public class Bob
{
public String Surname { get; set; }

private Bob()
{ }

public Bob(string surname)
{
Surname = surname;
}
}
< /code>
Я могу получить доступ к частному конструктору с помощью статического метода в классе, как это: < /p>
public static Bob GetBob()
{
return new Bob();
}
Я думал, что смогу получить доступ к частному конструктору с помощью метода расширения, поскольку (в зависимости от моего понимания) методы расширения переводя Strong> статические методы в классе, но я не могу:
static class Fred
{
public static Bob Bobby(this Bob bob)
{
return new Bob();
}
}
< /code>
Итак, как я могу получить доступ к частному конструктору? < /p>
Спасибо < /p>

Изменить: < /h1>
Причина, по которой я хотел сделать это, заключалась в том, что я хотел создать тесты для одного из наших бизнес -классов, но не позволить потребителю этого класса иметь возможность иметь возможность Неправильно создать объект. Я тестирую это, поэтому я знаю (я надеюсь!) При каких обстоятельствах тесты потерпят неудачу. Я все еще сейчас тестирование N00B, поэтому моя идея могла или не была «неправильным способом». Потребитель этого класса, то есть вызов общественным методам и если публичные методы в порядке, предполагая, что частные методы в порядке. Я бы все еще предпочел бы проверить личные методы, но мой босс - дышать моей шеей на результате:-(

Подробнее здесь: https://stackoverflow.com/questions/416 ... in-c-sharp

Вернуться в «C#»