Показать сообщение отдельно
Старый 03.11.2019, 14:25   #165
Антихрист
Разработчик
 
Регистрация: 20.01.2007
Сообщений: 485
Написано 182 полезных сообщений
(для 412 пользователей)
Ответ: Проблемы разработки от EvilOkta

Сообщение от EvilOkta Посмотреть сообщение
Спасибо ) энтерпрайз дорого (я ж не зарабатываю программированием), идея с partial интересная. Параллельно в Excel заношу публичные методы классов и их сигнатуры, на всякий случай.

Продолжаю закидывать страшными вопросами. Я наконец-то разобрался со свойствами (pax за это отдельное спасибо), но терзают сомнения, можно ли их применять вот так:

protected static string[] Mounthes = new[] { "января""февраля""марта""апреля""мая""июня""июля""августа""сентября""октября""ноября""декабря" };
protected 
string _mounth;
        protected 
byte Mounth // храним номер месяца, выдаем его string из массива по номеру элемента
        
{
            
get
            
{
                
byte count 1;
                while (
count <= Mounthes.Length)
                {
                    if (
Mounthes[count-1] == _mounth) break;
                    
count++;
                }
                return 
count;
            }
            
set
            
{
                
_mounth Mounthes[value-1];
            }
        } 
Условно закидываем номер месяца, а получаем его string название. Или это плохая практика?
Конкретно к этому примеру - выглядит не очень. В первую очередь за счет цикла с сравнением строк внутри гетера. Добавь одну переменную и закэшируй туда индекс.
protected static readonly string[] Monthes =
        {
            
"января""февраля""марта""апреля""мая""июня""июля""августа""сентября""октября""ноября",
            
"декабря"
        
};

        protected 
byte monthIndex;
        protected 
string monthName;

        protected 
byte MonthIndex
        
{
            
get => monthIndex;
            
set
            
{
                if (
value <= || value 12) return;
                
monthIndex = (byte) (value 1);
                
monthName Monthes[monthIndex];
            }
        }

        protected 
string MonthName => monthName
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
EvilOkta (03.11.2019)