mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-10-26 03:40:56 +08:00
Removing unnecessary calls ro Resolve<>()
--HG-- branch : 1.x
This commit is contained in:
@@ -3,7 +3,6 @@ using System.Xml;
|
||||
using Orchard.ContentManagement;
|
||||
using Orchard.ContentManagement.Drivers;
|
||||
using Orchard.ContentManagement.Handlers;
|
||||
using Orchard.Core.Common.Services;
|
||||
using Orchard.Mvc;
|
||||
using Orchard.PublishLater.Models;
|
||||
using Orchard.PublishLater.Services;
|
||||
@@ -14,14 +13,16 @@ using System.Globalization;
|
||||
namespace Orchard.PublishLater.Drivers {
|
||||
public class PublishLaterPartDriver : ContentPartDriver<PublishLaterPart> {
|
||||
private const string TemplateName = "Parts/PublishLater";
|
||||
private readonly IHttpContextAccessor _httpContextAccessor;
|
||||
private readonly IPublishLaterService _publishLaterService;
|
||||
private const string DatePattern = "M/d/yyyy";
|
||||
private const string TimePattern = "h:mm tt";
|
||||
|
||||
public PublishLaterPartDriver(
|
||||
IOrchardServices services,
|
||||
ICommonService commonService,
|
||||
IHttpContextAccessor httpContextAccessor,
|
||||
IPublishLaterService publishLaterService) {
|
||||
_httpContextAccessor = httpContextAccessor;
|
||||
_publishLaterService = publishLaterService;
|
||||
T = NullLocalizer.Instance;
|
||||
Services = services;
|
||||
@@ -61,7 +62,7 @@ namespace Orchard.PublishLater.Drivers {
|
||||
|
||||
updater.TryUpdateModel(model, Prefix, null, null);
|
||||
|
||||
if (Services.WorkContext.Resolve<IHttpContextAccessor>().Current().Request.Form["submit.Save"] == "submit.PublishLater") {
|
||||
if (_httpContextAccessor.Current().Request.Form["submit.Save"] == "submit.PublishLater") {
|
||||
if (!string.IsNullOrWhiteSpace(model.ScheduledPublishDate) && !string.IsNullOrWhiteSpace(model.ScheduledPublishTime)) {
|
||||
DateTime scheduled;
|
||||
string parseDateTime = String.Concat(model.ScheduledPublishDate, " ", model.ScheduledPublishTime);
|
||||
|
||||
@@ -26,8 +26,7 @@
|
||||
// these are just hacked together to fire existing partials... can change
|
||||
Model.Header.Add(Display.Header());
|
||||
|
||||
var thisUser = Html.Resolve<IAuthenticationService>().GetAuthenticatedUser();
|
||||
Model.Header.Add(Display.User(CurrentUser: thisUser));
|
||||
Model.Header.Add(Display.User(CurrentUser: WorkContext.CurrentUser));
|
||||
Model.Footer.Add(Display.OrchardVersion());
|
||||
|
||||
if (Model.Title != null) {
|
||||
|
||||
@@ -29,6 +29,7 @@ namespace Orchard.ContentManagement {
|
||||
private readonly Func<IContentManagerSession> _contentManagerSession;
|
||||
private readonly Lazy<IContentDisplay> _contentDisplay;
|
||||
private readonly Lazy<ISessionLocator> _sessionLocator;
|
||||
private readonly Lazy<IEnumerable<IContentHandler>> _handlers;
|
||||
private const string Published = "Published";
|
||||
private const string Draft = "Draft";
|
||||
|
||||
@@ -40,13 +41,15 @@ namespace Orchard.ContentManagement {
|
||||
IContentDefinitionManager contentDefinitionManager,
|
||||
Func<IContentManagerSession> contentManagerSession,
|
||||
Lazy<IContentDisplay> contentDisplay,
|
||||
Lazy<ISessionLocator> sessionLocator) {
|
||||
Lazy<ISessionLocator> sessionLocator,
|
||||
Lazy<IEnumerable<IContentHandler>> handlers) {
|
||||
_context = context;
|
||||
_contentTypeRepository = contentTypeRepository;
|
||||
_contentItemRepository = contentItemRepository;
|
||||
_contentItemVersionRepository = contentItemVersionRepository;
|
||||
_contentDefinitionManager = contentDefinitionManager;
|
||||
_contentManagerSession = contentManagerSession;
|
||||
_handlers = handlers;
|
||||
_contentDisplay = contentDisplay;
|
||||
_sessionLocator = sessionLocator;
|
||||
Logger = NullLogger.Instance;
|
||||
@@ -54,15 +57,8 @@ namespace Orchard.ContentManagement {
|
||||
|
||||
public ILogger Logger { get; set; }
|
||||
|
||||
private IEnumerable<IContentHandler> _handlers;
|
||||
public IEnumerable<IContentHandler> Handlers {
|
||||
get {
|
||||
if (_handlers == null) {
|
||||
_handlers = _context.Resolve<IEnumerable<IContentHandler>>();
|
||||
}
|
||||
|
||||
return _handlers;
|
||||
}
|
||||
get { return _handlers.Value; }
|
||||
}
|
||||
|
||||
public IEnumerable<ContentTypeDefinition> GetContentTypeDefinitions() {
|
||||
|
||||
@@ -1,21 +0,0 @@
|
||||
using System;
|
||||
using System.Web.Mvc;
|
||||
|
||||
namespace Orchard.Mvc.Html {
|
||||
public interface IFoo{}
|
||||
public static class ContainerExtensions {
|
||||
/// <summary>
|
||||
/// This method performed by Erik Weisz.
|
||||
/// </summary>
|
||||
/// <see cref="http://en.wikipedia.org/wiki/Harry_Houdini"/>
|
||||
/// <returns>himself</returns>
|
||||
public static TService Resolve<TService>(this HtmlHelper html) {
|
||||
var workContext = html.ViewContext.RequestContext.GetWorkContext();
|
||||
|
||||
if (workContext == null)
|
||||
throw new ApplicationException(string.Format(@"The WorkContext cannot be found for the request. Unable to resolve '{0}'.", typeof(TService)));
|
||||
|
||||
return workContext.Resolve<TService>();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -7,7 +7,6 @@ using System.Web.Mvc;
|
||||
using System.Web.Mvc.Html;
|
||||
using System.Web.Routing;
|
||||
using Orchard.Localization;
|
||||
using Orchard.Settings;
|
||||
using Orchard.Utility;
|
||||
using Orchard.Utility.Extensions;
|
||||
using System.Web;
|
||||
@@ -78,6 +77,15 @@ namespace Orchard.Mvc.Html {
|
||||
return MvcHtmlString.Create(builder.ToString(TagRenderMode.Normal));
|
||||
}
|
||||
|
||||
public static WorkContext GetWorkContext(this HtmlHelper html) {
|
||||
var workContext = html.ViewContext.RequestContext.GetWorkContext();
|
||||
|
||||
if (workContext == null)
|
||||
throw new ApplicationException("The WorkContext cannot be found for the request");
|
||||
|
||||
return workContext;
|
||||
}
|
||||
|
||||
#region UnorderedList
|
||||
|
||||
public static IHtmlString UnorderedList<T>(this HtmlHelper htmlHelper, IEnumerable<T> items, Func<T, int, MvcHtmlString> generateContent, string cssClass) {
|
||||
@@ -302,7 +310,7 @@ namespace Orchard.Mvc.Html {
|
||||
#region AntiForgeryTokenOrchard
|
||||
|
||||
public static MvcHtmlString AntiForgeryTokenOrchard(this HtmlHelper htmlHelper) {
|
||||
var siteSalt = htmlHelper.Resolve<ISiteService>().GetSiteSettings().SiteSalt;
|
||||
var siteSalt = htmlHelper.GetWorkContext().CurrentSite.SiteSalt;
|
||||
|
||||
try {
|
||||
return htmlHelper.AntiForgeryToken(siteSalt);
|
||||
|
||||
@@ -24,15 +24,15 @@ namespace Orchard.Mvc.Html {
|
||||
}
|
||||
|
||||
public static void AddTitleParts(this HtmlHelper html, params string[] titleParts) {
|
||||
html.Resolve<IPageTitleBuilder>().AddTitleParts(titleParts);
|
||||
html.GetWorkContext().Resolve<IPageTitleBuilder>().AddTitleParts(titleParts);
|
||||
}
|
||||
|
||||
public static void AppendTitleParts(this HtmlHelper html, params string[] titleParts) {
|
||||
html.Resolve<IPageTitleBuilder>().AppendTitleParts(titleParts);
|
||||
html.GetWorkContext().Resolve<IPageTitleBuilder>().AppendTitleParts(titleParts);
|
||||
}
|
||||
|
||||
public static MvcHtmlString Title(this HtmlHelper html, params string[] titleParts) {
|
||||
IPageTitleBuilder pageTitleBuilder = html.Resolve<IPageTitleBuilder>();
|
||||
var pageTitleBuilder = html.GetWorkContext().Resolve<IPageTitleBuilder>();
|
||||
|
||||
html.AddTitleParts(titleParts);
|
||||
|
||||
@@ -58,11 +58,11 @@ namespace Orchard.Mvc.Html {
|
||||
}
|
||||
|
||||
public static void AddPageClassNames(this HtmlHelper html, params object[] classNames) {
|
||||
html.Resolve<IPageClassBuilder>().AddClassNames(classNames);
|
||||
html.GetWorkContext().Resolve<IPageClassBuilder>().AddClassNames(classNames);
|
||||
}
|
||||
|
||||
public static MvcHtmlString ClassForPage(this HtmlHelper html, params object[] classNames) {
|
||||
IPageClassBuilder pageClassBuilder = html.Resolve<IPageClassBuilder>();
|
||||
IPageClassBuilder pageClassBuilder = html.GetWorkContext().Resolve<IPageClassBuilder>();
|
||||
|
||||
html.AddPageClassNames(classNames);
|
||||
//todo: (heskew) need ContentItem.ContentType
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
using System;
|
||||
using System.Web.Mvc;
|
||||
using System.Web.Mvc;
|
||||
using System.Web.Mvc.Html;
|
||||
using Orchard.Environment.Extensions.Models;
|
||||
using Orchard.Themes;
|
||||
using Orchard.Validation;
|
||||
|
||||
namespace Orchard.Mvc.Html {
|
||||
@@ -15,11 +13,6 @@ namespace Orchard.Mvc.Html {
|
||||
helper.RenderPartial(viewName);
|
||||
}
|
||||
|
||||
[Obsolete("How do you know the request theme is the same as the place the theme template is rendering from?")]
|
||||
public static string ThemePath(this HtmlHelper helper, string path) {
|
||||
return helper.ThemePath(helper.Resolve<IThemeManager>().GetRequestTheme(helper.ViewContext.RequestContext), path);
|
||||
}
|
||||
|
||||
public static string ThemePath(this HtmlHelper helper, ExtensionDescriptor theme, string path) {
|
||||
return theme.Location + "/" + theme.Id + path;
|
||||
}
|
||||
|
||||
@@ -71,14 +71,19 @@ namespace Orchard.Mvc.ViewEngines.Razor {
|
||||
public ScriptRegister Script {
|
||||
get {
|
||||
return _scriptRegister ??
|
||||
(_scriptRegister = new WebViewScriptRegister(this, Html.ViewDataContainer, Html.Resolve<IResourceManager>()));
|
||||
(_scriptRegister = new WebViewScriptRegister(this, Html.ViewDataContainer, ResourceManager));
|
||||
}
|
||||
}
|
||||
|
||||
private IResourceManager _resourceManager;
|
||||
public IResourceManager ResourceManager {
|
||||
get { return _resourceManager ?? (_resourceManager = _workContext.Resolve<IResourceManager>()); }
|
||||
}
|
||||
|
||||
public ResourceRegister Style {
|
||||
get {
|
||||
return _stylesheetRegister ??
|
||||
(_stylesheetRegister = new ResourceRegister(Html.ViewDataContainer, Html.Resolve<IResourceManager>(), "stylesheet"));
|
||||
(_stylesheetRegister = new ResourceRegister(Html.ViewDataContainer, ResourceManager, "stylesheet"));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -92,7 +97,7 @@ namespace Orchard.Mvc.ViewEngines.Razor {
|
||||
}
|
||||
|
||||
public virtual void RegisterLink(LinkEntry link) {
|
||||
Html.Resolve<IResourceManager>().RegisterLink(link);
|
||||
ResourceManager.RegisterLink(link);
|
||||
}
|
||||
|
||||
public void SetMeta(string name, string content) {
|
||||
@@ -100,7 +105,7 @@ namespace Orchard.Mvc.ViewEngines.Razor {
|
||||
}
|
||||
|
||||
public virtual void SetMeta(MetaEntry meta) {
|
||||
Html.Resolve<IResourceManager>().SetMeta(meta);
|
||||
ResourceManager.SetMeta(meta);
|
||||
}
|
||||
|
||||
public void AppendMeta(string name, string content, string contentSeparator) {
|
||||
@@ -108,7 +113,7 @@ namespace Orchard.Mvc.ViewEngines.Razor {
|
||||
}
|
||||
|
||||
public virtual void AppendMeta(MetaEntry meta, string contentSeparator) {
|
||||
Html.Resolve<IResourceManager>().AppendMeta(meta, contentSeparator);
|
||||
ResourceManager.AppendMeta(meta, contentSeparator);
|
||||
}
|
||||
|
||||
public override void InitHelpers() {
|
||||
@@ -130,7 +135,7 @@ namespace Orchard.Mvc.ViewEngines.Razor {
|
||||
}
|
||||
|
||||
public OrchardTagBuilder Tag(dynamic shape, string tagName) {
|
||||
return Html.Resolve<ITagBuilderFactory>().Create(shape, tagName);
|
||||
return Html.GetWorkContext().Resolve<ITagBuilderFactory>().Create(shape, tagName);
|
||||
}
|
||||
|
||||
public IHtmlString DisplayChildren(dynamic shape) {
|
||||
|
||||
@@ -28,7 +28,7 @@ namespace Orchard.Mvc {
|
||||
public ScriptRegister Script {
|
||||
get {
|
||||
return _scriptRegister ??
|
||||
(_scriptRegister = new ViewPageScriptRegister(Writer, Html.ViewDataContainer, Html.Resolve<IResourceManager>()));
|
||||
(_scriptRegister = new ViewPageScriptRegister(Writer, Html.ViewDataContainer, Html.GetWorkContext().Resolve<IResourceManager>()));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -43,7 +43,7 @@ namespace Orchard.Mvc {
|
||||
public ResourceRegister Style {
|
||||
get {
|
||||
return _stylesheetRegister ??
|
||||
(_stylesheetRegister = new ResourceRegister(Html.ViewDataContainer, Html.Resolve<IResourceManager>(), "stylesheet"));
|
||||
(_stylesheetRegister = new ResourceRegister(Html.ViewDataContainer, Html.GetWorkContext().Resolve<IResourceManager>(), "stylesheet"));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -59,7 +59,7 @@ namespace Orchard.Mvc {
|
||||
}
|
||||
|
||||
public virtual void RegisterLink(LinkEntry link) {
|
||||
Html.Resolve<IResourceManager>().RegisterLink(link);
|
||||
Html.GetWorkContext().Resolve<IResourceManager>().RegisterLink(link);
|
||||
}
|
||||
|
||||
public void SetMeta(string name, string content) {
|
||||
@@ -67,7 +67,7 @@ namespace Orchard.Mvc {
|
||||
}
|
||||
|
||||
public virtual void SetMeta(MetaEntry meta) {
|
||||
Html.Resolve<IResourceManager>().SetMeta(meta);
|
||||
Html.GetWorkContext().Resolve<IResourceManager>().SetMeta(meta);
|
||||
}
|
||||
|
||||
public void AppendMeta(string name, string content, string contentSeparator) {
|
||||
@@ -75,7 +75,7 @@ namespace Orchard.Mvc {
|
||||
}
|
||||
|
||||
public virtual void AppendMeta(MetaEntry meta, string contentSeparator) {
|
||||
Html.Resolve<IResourceManager>().AppendMeta(meta, contentSeparator);
|
||||
Html.GetWorkContext().Resolve<IResourceManager>().AppendMeta(meta, contentSeparator);
|
||||
}
|
||||
|
||||
public MvcHtmlString H(string value) {
|
||||
@@ -91,7 +91,7 @@ namespace Orchard.Mvc {
|
||||
}
|
||||
|
||||
public OrchardTagBuilder Tag(dynamic shape, string tagName) {
|
||||
return Html.Resolve<ITagBuilderFactory>().Create(shape, tagName);
|
||||
return Html.GetWorkContext().Resolve<ITagBuilderFactory>().Create(shape, tagName);
|
||||
}
|
||||
|
||||
public IHtmlString DisplayChildren(dynamic shape) {
|
||||
|
||||
@@ -35,19 +35,19 @@ namespace Orchard.Mvc {
|
||||
public ScriptRegister Script {
|
||||
get {
|
||||
return _scriptRegister ??
|
||||
(_scriptRegister = new ViewPage.ViewPageScriptRegister(Writer, Html.ViewDataContainer, Html.Resolve<IResourceManager>()));
|
||||
(_scriptRegister = new ViewPage.ViewPageScriptRegister(Writer, Html.ViewDataContainer, Html.GetWorkContext().Resolve<IResourceManager>()));
|
||||
}
|
||||
}
|
||||
|
||||
public ResourceRegister Style {
|
||||
get {
|
||||
return _stylesheetRegister ??
|
||||
(_stylesheetRegister = new ResourceRegister(Html.ViewDataContainer, Html.Resolve<IResourceManager>(), "stylesheet"));
|
||||
(_stylesheetRegister = new ResourceRegister(Html.ViewDataContainer, Html.GetWorkContext().Resolve<IResourceManager>(), "stylesheet"));
|
||||
}
|
||||
}
|
||||
|
||||
public virtual void RegisterLink(LinkEntry link) {
|
||||
Html.Resolve<IResourceManager>().RegisterLink(link);
|
||||
Html.GetWorkContext().Resolve<IResourceManager>().RegisterLink(link);
|
||||
}
|
||||
|
||||
public void SetMeta(string name, string content) {
|
||||
@@ -55,7 +55,7 @@ namespace Orchard.Mvc {
|
||||
}
|
||||
|
||||
public virtual void SetMeta(MetaEntry meta) {
|
||||
Html.Resolve<IResourceManager>().SetMeta(meta);
|
||||
Html.GetWorkContext().Resolve<IResourceManager>().SetMeta(meta);
|
||||
}
|
||||
|
||||
public void AppendMeta(string name, string content, string contentSeparator) {
|
||||
@@ -63,7 +63,7 @@ namespace Orchard.Mvc {
|
||||
}
|
||||
|
||||
public virtual void AppendMeta(MetaEntry meta, string contentSeparator) {
|
||||
Html.Resolve<IResourceManager>().AppendMeta(meta, contentSeparator);
|
||||
Html.GetWorkContext().Resolve<IResourceManager>().AppendMeta(meta, contentSeparator);
|
||||
}
|
||||
|
||||
public override void RenderView(ViewContext viewContext) {
|
||||
@@ -90,7 +90,7 @@ namespace Orchard.Mvc {
|
||||
}
|
||||
|
||||
public OrchardTagBuilder Tag(dynamic shape, string tagName) {
|
||||
return Html.Resolve<ITagBuilderFactory>().Create(shape, tagName);
|
||||
return Html.GetWorkContext().Resolve<ITagBuilderFactory>().Create(shape, tagName);
|
||||
}
|
||||
|
||||
public IHtmlString DisplayChildren(dynamic shape) {
|
||||
|
||||
@@ -815,7 +815,6 @@
|
||||
<Compile Include="Logging\LoggingModule.cs" />
|
||||
<Compile Include="Logging\NullLogger.cs" />
|
||||
<Compile Include="Logging\NullLoggerFactory.cs" />
|
||||
<Compile Include="Mvc\Html\ContainerExtensions.cs" />
|
||||
<Compile Include="Mvc\Html\ContentItemExtensions.cs" />
|
||||
<Compile Include="Mvc\Html\LayoutExtensions.cs" />
|
||||
<Compile Include="Mvc\MvcModule.cs" />
|
||||
|
||||
Reference in New Issue
Block a user