2016-12-21 212 views
0

ユニットテストをしようとすると、「System.UriFormatException:無効なURI:無効なポートが指定されました」というエラーが表示されました。エラーを示す コードSystem.UriFormatException:無効なURI:無効なポートが指定されています。 in c#

public Dictionary<SensorMode, Uri> ImageSrc = new Dictionary<SensorMode, Uri>() 
     { 
      {SensorMode.f, new Uri("pack://application:,,,/Resources/TS.png") },//towards to sensor image 
      {SensorMode.b, new Uri("pack://application:,,,/Resources/AS.png") },//away from the sensor image 
      {SensorMode.c, new Uri("pack://application:,,,/Resources/F.png") },//fast moving image 
      {SensorMode.p, new Uri("pack://application:,,,/Resources/S.png") },//slow moving image 
      {SensorMode.x, new Uri("pack://application:,,,/Resources/fail.png")}//fail image 
     }; 

誰も私がこれを解決するために助けることができる、です。

答えて

1

pack://スキームがまだ登録されていない間にこのコードを実行しているからです。このスキームは、アプリケーションオブジェクトの作成時に登録されます。このコードをテストフィクスチャの設定に追加することができます:

[SetUp] 
    public void OnTestInitialize() 
    { 
     UriParser.Register(new GenericUriParser(
     GenericUriParserOptions.GenericAuthority), "pack", -1); 
    } 
関連する問題