Add Using extension for small using statements.#7
Add Using extension for small using statements.#7dsmailys wants to merge 1 commit intozzzprojects:masterfrom
Conversation
|
Any suggestions are welcome. This might not be an extension method due to not having this parameter in method declaration, but it is very helpful to use nevertheless. |
|
Hello @dsmailys , Thank you for submitting this pull. I believe it's a very good addition and I could have used it myself multiple times. No need to add a test, I will add it on my side by testing it (Anyway, there is not a lot of tests we can add here hehe!) Best Regards, Jonathan |
|
Hello @dsmailys , Sorry for the long delay ;) Is there a reason why you did make it as an extension method such as: public static void Using<TDisposable>(this TDisposable factory, Action<TDisposable> action)
where TDisposable : IDisposable
{
using (var disposable = factory)
{
action(disposable);
}
}
public static TResult Using<TDisposable, TResult>(this TDisposable factory, Func<TDisposable, TResult> action)
where TDisposable : IDisposable
{
using (var disposable = factory)
{
return action(disposable);
}
}I believe this implementation will be better which will allow code such as: var sqlConnection = new SqlConnection();
sqlConnection.Using(x =>
{
if (x.State != ConnectionState.Open)
{
}
});Let me know your though. Best Regards, Jonathan |
|
@JonathanMagnan looks great! I prefer more the syntax that you have outlined in your latest comment. Will you modify it accordingly or should I change up the code for the pull request? |
My first pull request