私は次のようなシリアル化コンストラクターを介してシリアル化を行います:
private MyClass(SerializationInfo info, StreamingContext c)
{
try
{
MyIntVar = info.GetInt32("MyIntVar");
}
catch(Exception)
{
Trace.WriteLine("Exception occured! Setting default value.");
MyIntVar = 4711;
}
}
私が今達成しようとしているのは、この例外が発生したときにシリアル化されているファイルの名前とパスをトレースすることです。
何かのようなもの:
if( c is file)
{
Trace.WriteLine("Don't bother, I proceed anyway, but maybe you should repair the file " + FilePath);
}
だから私はこれに関して2つの質問があります:
- 現在のシリアル化コンテキストがファイルであるとどのように判断できますか?
- このファイルの対応するファイル名とパスを取得するにはどうすればよいですか?