相关疑难解决方法(0)

从using()语句中返回是否有任何副作用?

返回从方法值 using语句是得到一个DataContext似乎总是工作精细,就像这样:

public static Transaction GetMostRecentTransaction(int singleId)
{
    using (var db = new DataClasses1DataContext())
    {
        var transaction = (from t in db.Transactions
                              orderby t.WhenCreated descending
                              where t.Id == singleId
                              select t).SingleOrDefault();
        return transaction;
    }
}
Run Code Online (Sandbox Code Playgroud)

但是我总是觉得在打破使用括号之前我应该关闭一些东西,例如在using语句之前定义事务,在括号获取它的值,然后括号后返回.

将变量定义并返回到使用括号之外是更好的做法还是以任何方式保存资源?

c# using

124
推荐指数
3
解决办法
2万
查看次数

为什么IEnumerator <T>从IDisposable继承而非通用IEnumerator不继承?

我注意到泛型IEnumerator<T>继承自IDisposable,但非通用接口IEnumerator没有.为什么这样设计?

通常,我们使用foreach语句来遍历IEnumerator<T>实例.生成的foreach代码实际上有try-finally块,最终调用Dispose().

c# generics ienumerator

72
推荐指数
3
解决办法
8224
查看次数

标签 统计

c# ×2

generics ×1

ienumerator ×1

using ×1