1 // Copyright (c) Microsoft Corporation. All rights reserved. See License.txt in the project root for license information. 2 3 using System.Globalization; 4 using System.Web.Mvc.Properties; 5 using System.Web.UI; 6 7 namespace System.Web.Mvc 8 { 9 [FileLevelControlBuilder(typeof(ViewMasterPageControlBuilder))] 10 public class ViewMasterPage : MasterPage 11 { 12 public AjaxHelper<object> Ajax 13 { 14 get { return ViewPage.Ajax; } 15 } 16 17 public HtmlHelper<object> Html 18 { 19 get { return ViewPage.Html; } 20 } 21 22 public object Model 23 { 24 get { return ViewData.Model; } 25 } 26 27 public TempDataDictionary TempData 28 { 29 get { return ViewPage.TempData; } 30 } 31 32 public UrlHelper Url 33 { 34 get { return ViewPage.Url; } 35 } 36 37 public dynamic ViewBag 38 { 39 get { return ViewPage.ViewBag; } 40 } 41 42 public ViewContext ViewContext 43 { 44 get { return ViewPage.ViewContext; } 45 } 46 47 public ViewDataDictionary ViewData 48 { 49 get { return ViewPage.ViewData; } 50 } 51 52 internal ViewPage ViewPage 53 { 54 get 55 { 56 ViewPage viewPage = Page as ViewPage; 57 if (viewPage == null) 58 { 59 throw new InvalidOperationException(String.Format(CultureInfo.CurrentCulture, MvcResources.ViewMasterPage_RequiresViewPage)); 60 } 61 return viewPage; 62 } 63 } 64 65 public HtmlTextWriter Writer 66 { 67 get { return ViewPage.Writer; } 68 } 69 } 70 } 71