Во время проверки, если камера присутствует и включена на моем мобильном устройстве Windows, я столкнулся с чем-то, чего не понимаю.
Код выглядит следующим образом:
public static bool CameraP(){
return Microsoft.WindowsMobile.Status.SystemState.CameraPresent;
}
public static bool CameraE()
{
return Microsoft.WindowsMobile.Status.SystemState.CameraEnabled;
}
public static bool CameraPresent1()
{
return Microsoft.WindowsMobile.Status.SystemState.CameraPresent
&& Microsoft.WindowsMobile.Status.SystemState.CameraEnabled;
}
public static bool CameraPresent2()
{
return CameraP() && CameraE();
}
Когда я вызываю CameraPresent2()
, он возвращает false (камеры нет). Но когда я вызываю CameraPresent1()
, я получаю MissingMethodException с комментарием "Не удалось найти метод: get_CameraEnabled Microsoft.WindowsMobile.Status.SystemState."
Является ли второй термин оценен в CameraPresent1
только потому, что оба они являются свойством (на уровне языка)?
Есть ли что-то еще, что объясняет разницу в поведении?