IDパーサーを使用して、AAMVAに準拠したドライバーのライセンスとIDカードを操作できるオブジェクトに解析できます。 AAMVA規格のバージョンの詳細については、こちらをご覧ください。 D20データ辞書の詳細については、こちらをご覧ください。
using IdParser ; var idCard = Barcode . Parse ( barcode ) ;
Console . WriteLine ( idCard . Address . StreetLine1 ) ; // "123 NORTH STATE ST."
Console . WriteLine ( idCard . IssuerIdentificationNumber . GetDescription ( ) ) ; // "New York"
if ( idCard is DriversLicense license )
{
Console . WriteLine ( license . Jurisdiction . VehicleClass ) ; // "C"
}より多くの例と使用については、ユニットテストプロジェクトをご覧ください。
IdParser.Clientプロジェクトは、IDが正しく解析されることをテストおよび確認するのに役立つ便利なGUIアプリケーションです。このアプリは、OPOSとHIDキーボードエミュレーションスキャナーの両方で動作します。
IdParser.Clientを構築できません。必要な依存関係がありません。 .NETのMicrosoftPOSをインストールする必要があります。 Microsoft.PointOfService DLLはGAC'Dであり、クライアントアプリを構築および実行できます。
Heightクラスには、間違ったTotalInchesまたはCentimetersがあります。 AAMVA標準には、高さのサブファイルレコードに小数点以下の場所がありません。その結果、インチとセンチメートル間の変換がオフになります。
ライブラリは、私が通過するすべてのバーコードに対してArgumentExcpetionsを投げています。デフォルトでは、すべてのバーコードはStrict検証レベルを使用して解析されます。すべてのバーコードは、PDFSで定義されているAAMVA標準に正確に接着することが期待されています。これは、OPOSを使用したスキャナーに推奨レベルです。ただし、特にWebブラウザーを使用してスキャンする場合、HIDキーボードエミュレーションを使用すると、予想されるデータが不正になります。 None Validationレベルを使用してみることができますが、これはすべての場合に動作することを保証されていません。データ要素がスキップされ、例外がまだスローされる場合があります。
D A J (? ! ( A L | A R | A Z | A K | C A | C O | C T | D E | F L | G A | H I | I A | I D | I L | I N | K S | K Y | L A | M A | M D | M E | M I | M N | M O | M S | M T | N C | N D | N H | N J | N M | N V | N Y | O H | O N | O R | P A | P E | P R | R I | S C | T N | T X | U T | V A | V T | W A | W I | W V | Q C | O K | N S | N E | N B | A B | S D | D C ) ) [ A - Z ] +