Я использовал модель с атрибутом 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}