Получить недвижимость от объекта - PullRequest
0 голосов
/ 10 мая 2019

У меня есть объект, который может быть зашифрован некоторыми свойствами (если для него есть информация в БД) или пустым (если для него нет информации в БД)

Например, для электронной почты, я делаю это так;

public string Email
{
    get
    {
        if (String.IsNullOrEmpty(this.Email))
            return "";
        else
            return Crypto.Decrypt(this.Email, GlobalVars.VALID_KEY);
    }
    set
    {
        this.Email = value;
    }
}

То, что я пытаюсь сделать, это то, что, когда значение установлено, оно будет пустой строкой или зашифрованной строкой, и когда мне понадобится свойство, оно передаст мне пустую строку или строку дешифрования

В режиме отладки я поставил точку, чтобы проверить что-то на объекте, и когда VS оценивал объект, я получил эту ошибку:

Целевой процесс завершил работу с кодом -2147023895 при оценке функции .... Email.get

какие-нибудь советы для этого?!

Заранее спасибо

1 Ответ

2 голосов
/ 10 мая 2019

Вы вызываете Email в get, что создает бесконечный цикл.

Попробуйте это:

private string _email;
public string Email
{
    get
    {
        if (String.IsNullOrEmpty(_email))
            return "";
        else
            return Crypto.Decrypt(_email, GlobalVars.VALID_KEY);
    }
    set
    {
        _email = value;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...