Skip to content

Unable to set maxDays without setting useDefaultRoute #65

@sussexrick

Description

@sussexrick

In FileSystemProviders.config if the maxDays setting is present but useDefaultRoute is not, you get

[InvalidOperationException: Could not find constructor for type 'Our.Umbraco.FileSystemProviders.Azure.AzureBlobFileSystem, Our.Umbraco.FileSystemProviders.Azure' which accepts 4 parameters]
Umbraco.Core.IO.FileSystemProviderManager.b__1(String s) +1270
System.Collections.Concurrent.ConcurrentDictionary 2.GetOrAdd(TKey key, Func 2 valueFactory) +85
Umbraco.Core.IO.FileSystemProviderManager.GetUnderlyingFileSystemProvider(String alias) +78
Our.Umbraco.FileSystemProviders.Azure.VirtualPathProviderController.ApplicationStarting(UmbracoApplicationBase umbracoApplication, ApplicationContext applicationContext) +163
Umbraco.Core.ApplicationEventHandler.OnApplicationStarting(UmbracoApplicationBase umbracoApplication, ApplicationContext applicationContext) +49
Umbraco.Core.CoreBootManager.b__8(IApplicationEventHandler x) +434
Umbraco.Core.EnumerableExtensions.ForEach(IEnumerable 1 items, Action 1 action) +167
Umbraco.Core.CoreBootManager.Startup(Action 1 afterStartup) +376
Umbraco.Core.UmbracoApplicationBase.StartApplication(Object sender, EventArgs e) +308

[HttpException (0x80004005): Could not find constructor for type 'Our.Umbraco.FileSystemProviders.Azure.AzureBlobFileSystem, Our.Umbraco.FileSystemProviders.Azure' which accepts 4 parameters]
System.Web.HttpApplicationFactory.EnsureAppStartCalledForIntegratedMode(HttpContext context, HttpApplication app) +551
System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext, HttpContext context, MethodInfo[] handlers) +186
System.Web.HttpApplication.InitSpecial(HttpApplicationState state, MethodInfo[] handlers, IntPtr appContext, HttpContext context) +175
System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext, HttpContext context) +441
System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext) +360

[HttpException (0x80004005): Could not find constructor for type 'Our.Umbraco.FileSystemProviders.Azure.AzureBlobFileSystem, Our.Umbraco.FileSystemProviders.Azure' which accepts 4 parameters]
System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +673
System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +118
System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +730`

This is the config that triggers the issue:

<FileSystemProviders>
 <Provider alias="media" type="Our.Umbraco.FileSystemProviders.Azure.AzureBlobFileSystem, Our.Umbraco.FileSystemProviders.Azure">
   <Parameters>
     <add key="containerName" value="media"/>
     <add key="rootUrl" value="http://127.0.0.1:10000/devstoreaccount1/"/>
     <add key="connectionString" value="UseDevelopmentStorage=true"/>
  <!--
    Optional configuration value determining the maximum number of days to cache items in the browser.
    Defaults to 365 days.-->
 
     <add key="maxDays" value="365"/> 
  <!--
    When true this allows the VirtualPathProvider to use the deafult "media" route prefix regardless 
    of the container name.

      <add key="useDefaultRoute" value="true"/>    -->
    </Parameters>
  </Provider>
</FileSystemProviders>

I'm just logging this as feedback. It isn't actually causing a problem because I can just set useDefaultRoute. Not sure if this is relevant but so far I've just installed the base package using nuget and configured the FileSystemProvider. I haven't done any configuration of ImageProcessor yet.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions