/// <summary> /// Initializes a new instance of the <see cref="ViewFileProvider" /> class. /// </summary> /// <param name="viewFileLocator"> The view file locator. </param> /// <param name="viewFixer">Used to modify external views so that can be written as any other view.</param> public ViewFileProvider(IViewFileLocator viewFileLocator, IExternalViewFixer viewFixer) { if (viewFileLocator == null) throw new ArgumentNullException("viewFileLocator"); _viewFileLocator = viewFileLocator; _viewFixer = viewFixer; _viewFileLocator.SetAllowedExtensions(new[] {"cshtml", "ascx", "aspx"}); }
/// <summary> /// Initializes a new instance of the <see cref="ViewFileProvider" /> class. /// </summary> /// <param name="viewFileLocator"> The view file locator. </param> /// <param name="viewFixer">Used to modify external views so that can be written as any other view.</param> public ViewFileProvider(IViewFileLocator viewFileLocator, IExternalViewFixer viewFixer) { if (viewFileLocator == null) { throw new ArgumentNullException("viewFileLocator"); } _viewFileLocator = viewFileLocator; _viewFixer = viewFixer; _viewFileLocator.SetAllowedExtensions(new[] { "cshtml", "ascx", "aspx" }); }
/// <summary> /// Used to adjust the external views before they are returned。 /// </summary> /// <param name="virtualPath">Path to requested view。</param> /// <param name="fileStream">Loaded file。</param> /// <param name="webConfigStream">Stream that contain the web config。</param> /// <returns>Stream to use。</returns> protected virtual Stream CorrectView(string virtualPath, FileStream fileStream, FileStream webConfigStream) { IExternalViewFixer fixer = this.viewFixer ?? DependencyResolver.Current.GetService <IExternalViewFixer>(); if (fixer == null) { return(fileStream); } Stream fixedView = fixer.CorrectView(virtualPath, fileStream, webConfigStream); fileStream.Close(); return(fixedView); }
/// <summary> /// Initializes a new instance of the <see cref="EmbeddedViewFileProvider"/> class. /// </summary> /// <param name="siteRoot">Root directory of the web site</param> /// <param name="viewFixer">View fixer</param> /// <example> /// <code> /// var embeddedProvider = new EmbeddedViewFileProvider(VirtualPathUtility.ToAbsolute("~/"), new ExternalViewFixer()); /// </code> /// </example> public EmbeddedViewFileProvider(string siteRoot, IExternalViewFixer viewFixer) : base(siteRoot) { _viewFixer = viewFixer; AllowedFileExtensions = new[] { "cshtml", "ascx", "aspx" }; }
/// <summary> /// Initializes a new instance of the <see cref="EmbeddedViewFileProvider"/> class. /// </summary> /// <param name="siteRoot">Root directory of the web site</param> /// <example> /// <code> /// var embeddedProvider = new EmbeddedViewFileProvider(VirtualPathUtility.ToAbsolute("~/")); /// </code> /// </example> public EmbeddedViewFileProvider(string siteRoot) : base(siteRoot) { _viewFixer = DependencyResolver.Current.GetService<IExternalViewFixer>(); AllowedFileExtensions = new[] {"cshtml", "ascx", "aspx"}; }
/// <summary> /// Initializes a new instance of the <see cref="EmbeddedViewFileProvider"/> class. /// </summary> /// <param name="siteRoot">Root directory of the web site</param> /// <example> /// <code> /// var embeddedProvider = new EmbeddedViewFileProvider(VirtualPathUtility.ToAbsolute("~/")); /// </code> /// </example> public EmbeddedViewFileProvider(string siteRoot) : base(siteRoot) { _viewFixer = DependencyResolver.Current.GetService <IExternalViewFixer>(); AllowedFileExtensions = new[] { "cshtml", "ascx", "aspx" }; }
/// <summary> /// Initializes a new instance of the <see cref="EmbeddedViewFileProvider"/> class. /// </summary> /// <param name="siteRoot">Root directory of the web site</param> /// <param name="viewFixer">Corrects embeddable views so that the can be built properly</param> /// <example> /// <code> /// var embeddedProvider = new EmbeddedViewFileProvider2(VirtualPathUtility.ToAbsolute("~/"), new ExternalViewFixer()); /// </code> /// </example> public EmbeddedViewFileProvider(string siteRoot, IExternalViewFixer viewFixer) { if (viewFixer == null) throw new ArgumentNullException("viewFixer"); _siteRoot = siteRoot; _viewFixer = viewFixer; }
/// <summary> /// Initializes a new instance of the <see cref="EmbeddedViewFileProvider"/> class. /// </summary> /// <param name="siteRoot">Root directory of the web site</param> /// <example> /// <code> /// var embeddedProvider = new EmbeddedViewFileProvider2(VirtualPathUtility.ToAbsolute("~/")); /// </code> /// </example> public EmbeddedViewFileProvider(string siteRoot) { _siteRoot = siteRoot; _viewFixer = DependencyResolver.Current.GetService<IExternalViewFixer>(); }
/// <summary> /// Initializes a new instance of the <see cref="ViewFileProvider" /> class. /// </summary> /// <param name="viewFileLocator"> The view file locator. </param> /// <param name="viewFixer">Used to modify external views so that can be written as any other view.</param> public ViewFileProvider(IViewFileLocator viewFileLocator, IExternalViewFixer viewFixer) { if (viewFileLocator == null) throw new ArgumentNullException("viewFileLocator"); _viewFileLocator = viewFileLocator; _viewFixer = viewFixer; }