Как я могу проверить на DBNull при выполнении моей команды только однажды?

AVAudioSession категории для AVAudioSessionCategoryPlayback и установите его активным

do {
    try AVAudioSession.sharedInstance().setCategory(.playback, mode: .default, options: [.mixWithOthers, .allowAirPlay])
    print("Playback OK")
    try AVAudioSession.sharedInstance().setActive(true)
    print("Session is Active")
} catch {
    print(error)
}
7
задан Cyril Gupta 8 January 2009 в 01:43
поделиться

3 ответа

Запишите себе дополнительный метод для команды sql.

public static T ExecuteNullableScalar<T>(this SqlCommand cmd)
    where T : struct
{
    var result = cmd.ExecuteScalar();
    if (result == DBNull.Value) return default(T);
    return (T)result;
}

Использование становится:

int value = cmd.ExecuteNullableScalar<int>();
17
ответ дан 6 December 2019 в 05:43
поделиться

Просто используйте переменную для кэширования результата:

var o = cmd.ExecuteScalar();
return o == DBNull.Value ? 0 : (int)o;
12
ответ дан 6 December 2019 в 05:43
поделиться
 object o = cmd.ExecuteScalar();
 return (o== DBNull.Value) ? 0 : (int)o;
4
ответ дан 6 December 2019 в 05:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: