Return inside or outside the using statement?
c#, return, using-statement
Solution
It does not matter. Effectively, the same thing is going to happen - namely, the data that you are about to return will be saved in a temporary for the duration of calling the `Dispose()` method on the `db` object.
Different shops prefer different coding standards. For example, some shops insist on not having returns except on the last line; in this case, the second alternative needs to be used. I prefer the first snippet, because it conveys the same meaning with fewer variables, and less code overall.
Problem
Should I do the `return` inside or outside the `using`statement? ``` public IEnumerable<Foo> GetData() { using (var db = new DbContext()) { return db.Foo().ToList(); } } ``` or ``` public IEnumerable<Foo> GetData() { IEnumerable<Foo> foo; using (var db = new DbContext()) { foo = db.Foo().ToList(); } return foo; } ```