2

関数からSPWebオブジェクトを返すコードがあります。したがって、たとえば:

public SPWeb getDeptWeb()
{
    SPWeb deptWeb = SpSite.OpenWeb(SpContext.Web.ID);
    ...
    return deptWeb;
}

この場合、SPWebオブジェクトをどのように破棄できますか?または、返されたパラメーターを受け入れる場所に配置するだけで十分ですか?

4

1 に答える 1

1

最善の方法は、おそらくusingステートメントを使用SPWebして、呼び出し元でを破棄することです。

public SPWeb getDeptWeb()
{
    SPWeb deptWeb = SpSite.OpenWeb(SpContext.Web.ID);
    // ...
    return deptWeb;
}

public void Foo()
{
    using (SPWeb deptWeb = getDeptWeb()) {
        // Do something with the website...
    }
}
于 2010-12-07T09:27:48.970 に答える