Рефакторинг одного большого списка свойств / полей C # - PullRequest
1 голос
/ 04 мая 2010

Если вы посмотрите на http://www.c -sharpcorner.com / UploadFile / dhananjaycoder / activedirectoryoperations11132009113015AM / activedirectoryoperations.aspx , существует огромный список свойств AD в одном классе.

Как можно реорганизовать такой большой список (связанных) полей? Было бы адекватным сделать отдельные классы или есть лучший способ сделать это более управляемым?

Спасибо

Ответы [ 4 ]

1 голос
/ 04 мая 2010

Если они связаны, они должны принадлежать друг другу ...

Если вы считаете, что можете группировать их дальше (то есть адрес, номера телефонов), вы можете создать простые классы для них.

1 голос
/ 04 мая 2010

Первая партия, которую я извлеку, - это восьмерка, начинающаяся с «MSEXCH» - этот префикс указывает, что автор считает, что в этих свойствах есть что-то общее. Кроме того, я не вижу ничего, что естественно попадает в простые группы, но если вы обнаружите, что определенные свойства всегда используются вместе, вероятно, было бы неплохо поместить их в один класс.

0 голосов
/ 05 мая 2010

, если проблема в том, что исходный код слишком длинный, вы можете использовать ваши Автоматические свойства

    public string Department { get; private set; }
    public string FirstName { get; private set; }
    public string MiddleName { get; private set; }
    public string LastName { get; private set; }
    public string LoginName { get; private set; }
    public string LoginNameWithDomain { get; private set; }
    public string StreetAddress { get; private set; }
    public string City { get; private set; }
    public string State { get; private set; }
    public string PostalCode { get; private set; }
    public string Country { get; private set; }
    public string HomePhone { get; private set; }
    public string Extension { get; private set; }
    public string Mobile { get; private set; }
    public string Fax { get; private set; }
    public string EmailAddress { get; private set; }
    public string Title { get; private set; }
    public string Company { get; private set; }
0 голосов
/ 04 мая 2010

Если вы говорите о разделении их на логические группы, тогда классы будут хорошо работать для этого, и это может облегчить их навигацию. Я уверен, что есть причина, по которой свойства в AD не группируются таким образом, но я всегда стараюсь группировать вещи, когда получаю так много свойств, что мне нужно начать серьезную прокрутку.

...