장치 평가 메서드
업데이트: 2007년 11월
ASP.NET 모바일 컨트롤에 대해 장치 평가 메서드를 사용하면 HasCapability 메서드에서 직접 사용할 수 있는 명명된 필터를 만들 수 있습니다. 또한 Web.config 파일에서 <DeviceSpecific> 섹션의 <Choice> 요소를 사용하여 간접적으로 이러한 필터를 사용할 수도 있습니다.
명명된 필터를 지정하려면 Web.config 파일의 <deviceFilters> 섹션에 항목을 추가해야 합니다. 다음 예제에서는 isHTML32라는 장치 필터를 정의하는 방법을 보여 줍니다.
<filter name="isHTML32" compare="PreferredRenderingType"
argument="html32" />
런타임에 이 필터는 현재 요청에 대한 MobileCapabilities 인스턴스의 PreferredRenderingType 속성 값을 html32라는 값과 비교합니다.
다음 예제에서는 GPSEnabled라는 새 기능을 정의하는 방법을 보여 줍니다. 자세한 내용은 정규화된 형식 이름 지정을 참조하십시오.
namespace MyNamespace
{
public class MyCapabilityEvaluators
{
public static bool IsGPSEnabled(
System.Web.Mobile.MobileCapabilities capabilities,
String unusedArg)
{
// processing code
}
}
}
해당 Web.config 파일에 다음 요소를 추가하여 새 기능을 추가합니다.
<deviceFilters>
<filter name="GPSEnabled"
type="MyNamespace.MyCapabilityEvaluators, MyAssembly"
method="IsGPSEnabled" />
</deviceFilters>
렌더링을 수행하는 동안 대상 장치의 기능을 기준으로 <DeviceSpecific> 요소 내의 항목 중 하나가 선택됩니다. 비교 작업에서는 먼저 페이지에 정의된 필터와 해당 필터의 이름을 비교합니다. 적절한 시그니처를 가진 메서드가 Web.config 파일 또는 구성 계층 구조에 있으면 해당 메서드는 적절한 이름을 가진 필터의 <Choice> 항목을 평가하는 데 사용됩니다.