Пример:
public class Name {
public string FirstName { get; private set; }
public string LastName { get; private set; }
private Name() { }
public Name(string firstName, string lastName) {
FirstName = firstName;
LastName = lastName;
}
}
При попытке создать экземпляр этого класса c # intellisense показывает как закрытый, так и открытый конструктор для нового ключевого слова, даже если один из конструкторов является приватным!
Что еще более странно, так это то, что когда я удаляю второй аргумент из общедоступного конструктора (удаляем lastName в качестве аргумента общедоступного конструктора), intellisense теперь правильно отображает только общедоступный конструктор с новым ключевым словом.
Это ошибка или я что-то здесь упускаю? Я использую VS2008 SP1.
редактировать: четкость кода