Day in Review , What I Learned
Today was one of those level-up days, not because everything worked perfectly, but because I stayed in it, kept asking the right questions, and solved real problems from the ground up. Here's what I tackled:
Networking: Static IP Struggles
Started the day debugging why my Windows machine wasn't connecting to the static IP I configured for local development. Turns out:
You can't just set a static IP and expect everything to sync,your DNS, gateway, and subnet mask also need to be aligned.
If the IP clashes with the router's DHCP range or the network itself, you get that weird connected but no internet behavior.
Lesson:
Networking is part of backend dev whether I like it or not. I'm now more comfortable troubleshooting IP configs.
ASP.NET MVC Debugging Masterclass
Jumped back into my StudentPortal project, where 24 of my MVC routes/pages were't displaying.Cleaned up my routing, confirmed the controllers and views were wired properly.
Ensured my DbContext was seeding data correctly and used Include() wisely to avoid null navigation props.
Fixed foreign key issues like the one where Book.CourseId was breaking due to a missing Course (foreign key violation).
Rewrote the full Book model with proper data annotations, nullable relationships, and FK navigation.
By the end, only two routes remain to debug, huge win. I've learned to break down route errors from the controller layer down to model binding and view validation.
Entity Framework Relationships Deep Dive
Spent time clarifying how EF Core handles relationships:
ICollection on the parent (e.g., Course) represents the many-side of a 1-to-many or many-to-many.
Nullable foreign keys give flexibility but still require valid IDs when FK constraints exist.
If the related entity isn't seeded or added (like a Course), expect insert errors like FK_Books_Courses_CourseId.
Validation:
More Than Meets the Eye
One issue hit harder than expected:
- Even though I was inputting the Course Title, validation was still failing.
Lesson:
Razor views only
bind input if field names match the model exactly (asp-for="Title" matters).
The model can be perfect, but if your form doesn't post what EF expects, you're stuck.ModelState.IsValid is my new best friend, use it as the first line of defense.
Debugging Mindset
What I really learned today:
Debugging isn't just trial and error, it's investigation.
Follow the stack trace, read the exception, and isolate the root cause.
Stay calm. Let the app tell you what it needs.
Confidence Boost: Local Dev Setup
Running my own database and full backend felt like a real power move. I still need to solve:
Setting up a static IP without constantly resetting env variables.
Making my development environment stable, portable, and reliable.
But this is real growth. I'm doing backend dev like a pro now and I'm proud of that.
Looking forward to picking up the last two bugs tomorrow and pushing ahead.
Top comments (0)