ViewDataFactory und stark typisierte Masterseiten

Ich versuche, meine stark typisierte Masterseite in meiner ASP MVC 2.0-Anwendung zum Laufen zu bringen. Mit Hilfe dieser beiden Beiträge bin ich weit gekommen:

Übergeben von Daten an die Masterseite in ASP.NET MVC

Stark typisierte ASP.Net MVC-Masterseiten

Das Problem ist, dass ich nicht sicher bin, wie ich den ViewDataFactory-Code zum Laufen bringen kann. Das ist mein Code:

BaseController.cs

public class BaseController : Controller
{        
    private IPageRepository _repPage;

    public BaseController(IPageRepository repPage)
    {
        _repPage = repPage;
    }

    protected T CreateViewData<T>() where T : MasterViewData, new()
    {
        IViewDataFactory factory = new ViewDataFactory();

        IEnumerable<Page> pages = _repPage.GetAllPages();

        return factory.Create<T>(pages);
    }
}

HomeController.cs

public class HomeController : BaseController
{
    public ActionResult Index()
    {
        HomeViewData viewData = CreateViewData<HomeViewData>();

        viewData.Name = "Test";

        return View("Index", viewData);
    }

    public ActionResult About()
    {
        return View();
    }
}

ViewDataFactory.cs

public interface IViewDataFactory
{
    T Create<T>(IEnumerable<Page> pages) where T : MasterViewData, new()
}

public class ViewDataFactory : IViewDataFactory
{
    public ViewDataFactory()
    {
    }  
}

HomeViewData.cs

public class HomeViewData : MasterViewData
{
    public string Name { get; set; }
}

MasterViewData

public class MasterViewData
{
    public IEnumerable<Page> Pages { get; set; }
}

Beim Erstellen der Lösung wird der folgende Buildfehler angezeigt:

"; expected" in ViewDataFactory.cs

Was auf das Code-Snippet zeigt:

T Create<T>(IEnumerable<Page> pages) where T : MasterViewData, new()

Ich vermisse etwas Wesentliches, ich bin neu in diesem und jede Hilfe wäre dankbar!

Antworten auf die Frage(2)

Ihre Antwort auf die Frage