Retornar um valor de método de dentro de uma instrução using que obtém um DataContext parece sempre funcionar bem , assim:
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;
}
}
Mas eu sempre sinto que eu deveria ser fechar algo antes de eu sair da usando colchetes, por exemplo, através da definição de transação antes a instrução usando, obtê-lo de valor dentro dos colchetes, e depois retornando após os suportes.
Definir e retornar a variável fora dos colchetes usando seria uma prática melhor ou conservaria os recursos de alguma maneira?