gpt4 book ai didi

nhibernate - session.Close() 和 session.Dispose() 之间的区别

转载 作者:行者123 更新时间:2023-12-02 22:39:28 25 4
gpt4 key购买 nike

session.Close()session.Dispose() 有什么区别?

最佳答案

来自 Nhibernate 源代码:

private void Dispose(bool isDisposing)
{
using (new SessionIdLoggingContext(base.SessionId))
{
if (!base.IsAlreadyDisposed)
{
log.Debug(string.Format("[session-id={0}] executing real Dispose({1})", base.SessionId, isDisposing));
if (!(!isDisposing || base.IsClosed))
{
this.Close();
}
base.IsAlreadyDisposed = true;
GC.SuppressFinalize(this);
}
}
}

因此 Dispose 方法调用 Close()。调用 Close()Dispose() 方法将关闭 session ,不允许您再使用它。

关于nhibernate - session.Close() 和 session.Dispose() 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4740091/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com