このコードを持っていると、finally ブロックで変数を割り当てても、変数が常に割り当てられることを理解できない場合、その理由がわかりません。通貨が割り当てられない有効なオプションがないと思います。あなたが知っているなら、その理由を理解するのは素晴らしいことです. とても感謝しています!
ありがとう!
CurrencyVO currency;
try
{
if (idConnection.HasValue && idConnection != 0)
{
currencyConnection = client.GetConnection(idConnection.Value);
model.Connection = currencyConnection;
}
else
{
int providerUserKey = (int)Models.UserModel.GetUser().ProviderUserKey;
currencyConnection = client.GetConnection(providerUserKey);
}
currency = model.Currencies.SingleOrDefault(c => c.IdCountry == currencyConnection.idcountry) ?? new CurrencyVO();
}
catch
{
currency = new CurrencyVO();
}
finally
{
model.PublishedContainer.Currency = currency;
}
エラーは最終ブロックで発生します。次のように最終ブロックから取り出すと:
} catch {
currency = new CurrencyVO();
}
model.PublishedContainer.Currency = currency;
それは正常に動作します。