このイベント ハンドラーでは:
public static void geolocator_PositionChanged(Geolocator sender, PositionChangedEventArgs args)
{
DateTimeOffset timeStampUTC = args.Position.Coordinate.Timestamp.ToUniversalTime();
DateTimeOffset timeStampLocal = timeStampUTC.LocalDateTime;
DateTimeOffset dateTimeStampUTC = timeStampUTC.DateTime;
RecordLocation(args.Position.Coordinate.Latitude, args.Position.Coordinate.Longitude,
args.Position.CivicAddress.City, args.Position.CivicAddress.State, dateTimeStampUTC, timeStampLocal);
}
...Null Reference Exception
理由args.Position.CivicAddress
がnull
わかりました (に渡された残りの引数RecordLocation()
は有効です)。位置が になる場合もあればnull
、そうでない場合もあると思います。市や州が見つからない時代が衰えずに過ぎ去るようにするにはどうすればよいでしょうか? の定義でこれらの文字列をヌル可能にしようとしましRecordLocation()
たが、コンパイルされません。
CivicAddress の null をチェックして、オーバーロードされたバージョンのRecordLocation()
メソッドを作成する必要がありますか? または、これを処理する別の方法がありますか?