Обобщенный метод с Nullable типом - C#
Формулировка задачи:
Здравствуйте уважаемые!
как заставить ConvertPresenter использовать тип ushort? при вызове.
если убрать то функция не сможет вернуть null.
Прошу помочь, скорее всего где то туплю)).
Заранее всем спасибо за сотрудничество!!!
protected T ConvertPresenter<T>(dynamic val, Func<bool> pridicate) where T : [COLOR="red"]class[/COLOR] { var tempVal = (T)Convert.ChangeType(val, typeof(T)); return pridicate() ? tempVal : null; } public override dynamic PresenterVal { set { ushort? val = ConvertPresenter<[COLOR="Red"]ushort?[/COLOR]>(Value, () => true); if (val.HasValue) ValBin = BitConverter.GetBytes(val.Value); } get { return val; } }
where T : class
Решение задачи: «Обобщенный метод с Nullable типом»
textual
Листинг программы
static T ConvertPresenter<T>(dynamic val, Func<bool> pridicate) { try { var tempVal = (T)Convert.ChangeType(val, typeof(T)); return pridicate() ? tempVal : default(T); } catch (Exception) { return default(T); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д