통합 문서 개체와 뭔가 다른 일을하고있는 한 구성 요소가 있으며 다른 클래스의 일부 메서드를 호출 한 메서드 본문의 중간에 있다고 가정 해 보겠습니다. 예 : COM 개체는 interop 정리를 능가합니다.
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 (문서)의 워크 시트를 호출해야합니까?
이 관리되지 않는 코드를 어떻게 관리해야하는지에 대한 좋은 설명이 전혀 없었습니다. 누군가 나에게 설명 할 수 있다면 정말 고맙겠습니다.
일반적으로 개체를 만든 메서드는 정리를 담당해야합니다. 이 시나리오에서 '정리'로 구성된 것은 다소 모호합니다. 초기화 및 정리 코드를 게시하고 '나중에 문제가 발생할 수 있음'에 대한 설명을 추가로 게시해야합니다. –