Почему функция set не работает в моем коде? - PullRequest
0 голосов
/ 22 января 2019

Я использовал модель с атрибутом byte [], который перед использованием следует преобразовать в short [].

Я добавил два свойства, чтобы преобразовать byte [] в short [], используя свойство get и его работу. Моя проблема заключается в том, что когда я пытаюсь использовать свойство Set, чтобы сделать обратное, и установить массив byte [] при изменении short [], мой код не работает, и когда я отлаживаю код, он вообще не вызывает функцию Set.

public class TestModel
{
   public byte[] Data { get; set; } // The original data
   private short[] _DataConverted { get; set; }
   public short[] DataConvert
   {
    get => _DataConverted ?? (_DataConverted = Data.GetShiftShort());
    set
    {
     Data = value.GetShiftByteFShort();
     _DataConverted = value;
    }
   }
}

public void Main()
{
  TestModel modal =new TestModel()
  {
   Data = new byte[] {0,1,0,2,0,3}
  };
  modal.DataConvert[0] ++;
  modal.DataConvert[1] +=1;
  modal.DataConvert[2] = modal.DataConvert[2] + 1 ;
}

И результат:

_DataConverted {2,3,4}

DataConvert {2,3,4}

Но данные не меняются {0,1,0,2,0,3}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...