ciao,
Da quello che scrivi ti è poco chiaro il pattern MVC

1)In soldoni:
ogni volta che richiami un url,
(es: http://tuosito/Posts/add)
la tua "richiesta" va a finire ad un Controller, in questo caso alla funzione "add" della classe "PostsController"
Sarà poi il controller a decidere cosa farti vedere, normalmente caricherà il model (i dati) e lo passerà alla vista che poi visualizzerai.

Ti consiglio questi tutorial che spiegano bene il funzionamento
http://www.asp.net/mvc/overview/gett...etting-started

2)Puoi definire un layout base in modo da poter definire solo il contenuto della singola pagina e non duplicare codice.
Se nella pagina c'è questo
codice:
@{
    Layout = "~/Views/Shared/_Layout.cshtml";
}
viene utilizzato il layout indicato per visualizzare la pagina.