A developer is tasked with creating a Visualforce page that displays a list of `OpportunityLineItem` records for a given `Opportunity`. The page must allow users to edit the `Quantity` and `UnitPrice` fields inline and save all changes with a single button click. The number of line items can exceed 100. Which controller approach is most suitable and efficient for this requirement?