XMLSerializer クラスでいくつかのことを行います。ほとんどの初心者と同様に、アプリの起動時にパフォーマンスの問題に直面しています。多くのブログや記事を読み、最終的に SGEN ツールを使用しています。現在、パフォーマンスは問題ないように見えますが、まだはっきりしていないことはほとんどありません。
1) 次のような SGEN 構文を使用する必要があります。
SGen.exe /assembly:MyAssembly /type:MyRootXmlType
または、次のようにするだけで十分です (現在、この構文を使用しています。アセンブリにはシリアライズ可能なクラスが 1 つしかありません)。
SGen.exe /assembly:MyAssembly
/type パラメータが実際に役立つのはいつですか?
2) MSDN を読みました ( http://msdn.microsoft.com/en-us/library/ee704594.aspx )
このコマンドは、シリアライザー アセンブリ MyAssembly.XmlSerializers.dll を生成します。これは、現在のプロジェクトまたは GAC への参照として追加する必要があります。
しかし、他のすべてのブログや記事 (SO など) では、MyAssembly.XmlSerializers.dll を MyAssembly が存在するフォルダーに入れるだけで十分だと読みました。
では、何が正しいのでしょうか。
3) .XmlSerilizers.dll を生成し、MyAssembly と一緒にデプロイするだけで十分ですか、それともコードに何かを追加する必要がありますか?
そうは思いませんが、コードを変更する必要がなく、「魔法」が自動的に発生することを確認したいと思います。