You are designing a .NET Framework 4 solution that includes a Windows Presentation
Foundation (WPF) application. The WPF application connects to a Microsoft SQL Server
2008 database. You plan to deploy the WPF application to millions of client computers. The
SQL Server database will be hosted in a data center. The WPF application will query the
database to provide type-ahead assistance as users enter data. The WPF application will
send a query after each character is entered. Each query will access multiple joined tables.
You need to recommend an approach for maximizing scalability of the solution. What should
you recommend?
A.
Create stored procedures to abstract the tables.
B.
Use System.Runtime.Caching to cache query results on the client.
C.
Denormalize the data to fewer tables.
D.
Create a separate data layer with caching.