سلام
DI خیلی خوب هست و اساس برنامه نویسی ماژول بیس برای .net ولی خب جاهای زیادی کاربرد داره. استفاده از اونا ضروری نیست مخصوصا برای پروژه های کوچیک چون یه مقدار زمان بر هست و زمان اجرا و تحلیل رو شاید دو برابر کنه.
اگه پروژت کوچیک نیست حتما لایه بندی شده و بر اساس DI و پترن های روز بنویس. وبسایت زیر هم اومده ساختار DI و خیلی چیزای دیگه رو پیاده سازی کرده و یک سلوشن بهت میده برای شروع کار:
http://aspnetboilerplate.com/