私は、ワークブックオブジェクトで何かをしているコンポーネントがあり、そのメソッド本体の途中に別のクラスのメソッドを呼び出すことができます。例えば :COMオブジェクトexcel interop clean up
public class MainComponent
{
public void MyMainMethod()
{
OtherComponent otherComponent = new OtherComponent();
Workbook document;
// some work with workbook object
// working with document and worksheet objects.
otherComponent.MethodCall(document);
// some work with workbook object and it's worksheets.
foreach(Worksheet sheet in document.Workheets)
// do something with sheet
}
}
public class OtherComponent
{
public void MethodCall(Workbook document)
{
string worksheetNames = "";
foreach(Worksheet sheet in document.Worksheets)
worksheetNames += sheet.Name;
Console.WriteLine(worksheetNames);
}
}
そしてそれotherComponent.MethodCall(文書)で、私はドキュメントを使用しており、ワークシートを繰り返しています。
EDITこれは具体的な質問です。文書のReleaseCOMObjectと、otherComponent.MethodCall(ドキュメント)のワークシートを呼び出す必要がありますか?
私はこの管理されていないコードをどのように管理すればよいのか、本当に良い説明はありませんでした。 誰かが私にこれを説明できるかどうか本当に感謝します。
一般に、オブジェクトを作成したメソッドは、クリーンアップを担当する必要があります。このシナリオでは、「クリーンアップ」からなるものはやや曖昧です。あなたは初期化とクリーンアップコードだけでなく、後で問題を引き起こす可能性があることについて何らかの説明を投稿するべきです。 –