Is it recommended to use a WCF Service Library in developing an N-Tier Windows Application?
WCF è un buon modo per accedere ai database attraverso i firewall. Tuttavia, se la tua applicazione è un'applicazione utilizzata dagli utenti nello stesso ufficio in cui è presente una LAN comune, non penso che la complessità sarebbe giustificata. Questo è particolarmente vero se il database è di proprietà e controllato solo da questa applicazione.
Also is it better to use the VS wizards to create the DataTables and DataSets?
In molti casi, è necessario personalizzare i dati passati tra livelli o livelli. Ti suggerirei di esaminare Entity Framework o un altro ORM per prenderti cura di questo per te. Anche il suggerimento di @Ourjamie è buono.
should I add all of my tables to 1 dataset or have a dataset for each table?
As a rule you need to optimize the data moved between tears/layer. Some times you don't need the features of a dataset (like tracking changes), so you don't use what you don't need. Your choice of a data structure will also be affected by the bind mechanism on the client and how you plan to notify the data layer of data changes. It is easier to use datasets but not always popular.
Ti suggerisco di valutare la tua reale necessità di un'architettura N-tier (se N > 2). Inoltre, è possibile prendere in considerazione i servizi Microsoft RIA che potrebbero risultare più semplici rispetto a WCF. Un'ultima parola, a volte le abilità del team guidano la tecnologia. Assicurati che il tuo team sia abbastanza bravo con queste tecnologie prima di rispettare le scadenze.