Unlocking Data Access With Object-Relational Mappers In C#: A Comprehensive Guide