4 つのタブを含む WPF アプリケーションがあります。Tab1 は、アプリケーションと共にロードされる最初のタブです。次のような Tab1Load メソッド (タブの名前) があります。
private void Tab1Load(object sender, RoutedEventArgs e)
{
myConfig.LoadConfigurationData();
XiphosDB.DataContext = Xiphos.XiphosDbNames;
}
myConfig は Window1.xaml.cs ファイルの先頭で宣言されました
LoadConfigData myConfig = new LoadConfigData();
LoadConfigData は次のようになります。
public void LoadConfigurationData()
{
LoadGen2Data();
LoadXiphosData();
LoadTestConsumerData();
}
最初のメソッド呼び出し LoadGen2Data は最後まで実行され、その時点で静的オブジェクトに値が設定されます。呼び出しは次のとおりです。
var count = 0;
foreach (var name in Gen2.allFiNames)
{
Gen2.ApiKeys.Add(name, APIKeys[count]);
Gen2.ConnectStrings.Add(name, connectStrings[count]);
Gen2.LongNames.Add(name, LongNames[count]);
count++;
}
Gen2 宣言は次のとおりです。
public class Gen2
{
public static List<string> allFiNames { get; set; }
public static Dictionary<string, string> LongNames { get; set; }
public static Dictionary<string, string> ApiKeys { get; set; }
public static Dictionary<string, string> ConnectStrings { get; set; }
}
Gen2.ApiKeys.Add が呼び出された直後に、アプリケーションは残りの Add ステートメントを呼び出さずにそのメソッド (LoadGen2Data) をスキップし、残りの 2 つのメソッド (LoadXiphosData と LoadTestConsumerData) を呼び出さずに LoadConfigurationData メソッドを終了します。 .
foreach ループの先頭に足を踏み入れると、"name" 値が入力され、APIKeys[count] が正当な値 (GUID) を提供することを確認しました。
エラーは表示されません。他のデバッグ ポイントは捕捉されず、アプリケーション GUI を問題なく (データなしで) 移動できます。
問題は何ですか?
ありがとう、
ジェイソン