private void LoadParameters() { _parameters.Clear(); if (_rawApduData == null || _rawApduData.Length <= 3) { return; } // If the initial length byte at index 2 is 0xFF two additional length bytes follow var offset = _rawApduData?.ElementAt(2) == 0xFF ? 5 : 3; LoadParameterHelper.LoadParameters(CreateParameterForBMP, (LoadParameterHelper.AddToParameterListDelegate) delegate(byte bmp, IParameter param) { if (_parameters.ContainsKey((ParameterTypeEnum)bmp)) { _parameters[(ParameterTypeEnum)bmp] = param; } else { _parameters.Add((ParameterTypeEnum)bmp, param); } }, _rawApduData, offset); }
private void LoadParameters() { _parameters.Clear(); LoadParameterHelper.LoadParameters(CreateParameterForBMP, (LoadParameterHelper.AddToParameterListDelegate) delegate(byte bmp, IParameter param) { if (_parameters.ContainsKey((ParameterTypeEnum)bmp)) { _parameters[(ParameterTypeEnum)bmp] = param; } else { _parameters.Add((ParameterTypeEnum)bmp, param); } }, _rawApduData, 3); }