Csharp/C#教程:我应该使用ObjectContext使用关键字吗?分享


我应该使用ObjectContext使用关键字吗?

我已经阅读过这个网站或CodeProject的某个地方,好的规则是,如果某个类已经实现了IDisposable接口而且只有你应该使用关键字,因为使用关键字翻译成MSIL是try / finally阻塞这样的东西:

try { //some logic } finally { if (obj != null) { obj.Dispose(); } } 

但是在观看Entity Framework的教程时,我遇到了类似这样的事情:

 using(SampleBEntities db = new SampleBEntities()){//some logic here} 

和SampleBEntitiesinheritance自ObjectContext并在MSDN lib中ObjectContext没有实现IDisposable?

是的,它确实实现了IDisposable接口。

 public class ObjectContext : IDisposable 

检查MSDN

它有方法Dispose()来自实现IDisposable接口。

如果它没有实现你所说的单独运行,它甚至不会编译。

使用陈述

使用定义范围,在该范围之外将放置一个或多个对象。

C#通过.NET Framework公共语言运行库(CLR)自动释放用于存储不再需要的对象的内存。 记忆的释放是不确定的; 只要CLR决定执行垃圾收集,就会释放内存。

using语句允许我们指定何时使用资源的对象应该释放它们。 提供给using语句的对象必须实现IDisposable接口。 此接口提供Dispose方法,该方法应释放对象的资源。

当达到using语句的结尾或者抛出exception并且控制在语句结束之前离开语句块时,可以退出using语句。

上述就是C#学习教程:我应该使用ObjectContext使用关键字吗?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/943008.html

(0)
上一篇 2021年11月13日
下一篇 2021年11月13日

精彩推荐