“Virtual file not found” after upgrade from Servic

2019-07-24 19:48发布

问题:

I have an old ASP.NET project, which I just upgraded from .NET 3.5 and ServiceStack to .NET 4.0 and ServiceStack 4.0.5.

However, I get a strange error while starting. This exception is not the first one in ServiceStack, there is an null pointer exception earlier that is caught. Any ideas?

The only previous question I see about is this, which talks about F#. I have an F# dll, but that one is not used in the startup.

Server Error in '/' Application.

Virtual file not found 
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 
Exception Details: System.IO.FileNotFoundException: Virtual file not found

Source Error:    
Line 107:     // Log.log(">>> Application_Start");
Line 108:
Line 109:     new SssAppHost().Init();
Line 110:            
Line 111:     // 20090928: This is to force static code in JobScheduler to run

Source File:  c:\data3\ssc\ssc\sss4\sss3\Global.asax.cs    Line:  109 

Stack Trace:    
[FileNotFoundException: Virtual file not found]
   ServiceStack.VirtualPath.ResourceVirtualDirectory.CreateVirtualFile(String resourceName) +185
   System.Linq.WhereSelectListIterator`2.MoveNext() +108
   System.Linq.Buffer`1..ctor(IEnumerable`1 source) +216
   System.Linq.<GetEnumerator>d__0.MoveNext() +106
   System.Collections.Generic.List`1.InsertRange(Int32 index, IEnumerable`1 collection) +392
   ServiceStack.VirtualPath.ResourceVirtualDirectory.InitializeDirectoryStructure(IEnumerable`1 manifestResourceNames) +432
   ServiceStack.VirtualPath.ResourceVirtualDirectory..ctor(IVirtualPathProvider owningProvider, IVirtualDirectory parentDir, Assembly backingAsm, String directoryName, IEnumerable`1 manifestResourceNames) +88
   ServiceStack.VirtualPath.ResourceVirtualDirectory.CreateVirtualDirectory(IGrouping`2 subResources) +134
   System.Linq.WhereSelectEnumerableIterator`2.MoveNext() +145
   System.Linq.Buffer`1..ctor(IEnumerable`1 source) +216
   System.Linq.<GetEnumerator>d__0.MoveNext() +106
   System.Collections.Generic.List`1.InsertRange(Int32 index, IEnumerable`1 collection) +392
   ServiceStack.VirtualPath.ResourceVirtualDirectory.InitializeDirectoryStructure(IEnumerable`1 manifestResourceNames) +704
   ServiceStack.VirtualPath.ResourceVirtualDirectory..ctor(IVirtualPathProvider owningProvider, IVirtualDirectory parentDir, Assembly backingAsm, String directoryName, IEnumerable`1 manifestResourceNames) +88
   ServiceStack.VirtualPath.ResourceVirtualDirectory.CreateVirtualDirectory(IGrouping`2 subResources) +134
   System.Linq.WhereSelectEnumerableIterator`2.MoveNext() +145
   System.Linq.Buffer`1..ctor(IEnumerable`1 source) +216
   System.Linq.<GetEnumerator>d__0.MoveNext() +106
   System.Collections.Generic.List`1.InsertRange(Int32 index, IEnumerable`1 collection) +392
   ServiceStack.VirtualPath.ResourceVirtualDirectory.InitializeDirectoryStructure(IEnumerable`1 manifestResourceNames) +704
   ServiceStack.VirtualPath.ResourceVirtualDirectory..ctor(IVirtualPathProvider owningProvider, IVirtualDirectory parentDir, Assembly backingAsm, String directoryName, IEnumerable`1 manifestResourceNames) +88
   ServiceStack.VirtualPath.ResourceVirtualPathProvider.Initialize() +88
   ServiceStack.VirtualPath.ResourceVirtualPathProvider..ctor(IAppHost appHost, Assembly backingAssembly) +47
   ServiceStack.ServiceStackHost.<Init>b__4(Assembly x) +29
   ServiceStack.EnumerableExtensions.Map(IEnumerable`1 items, Func`2 converter) +229
   ServiceStack.ServiceStackHost.Init() +339
   sss2.Global.Application_Start(Object sender, EventArgs e) in c:\data3\ssc\ssc\sss4\sss3\Global.asax.cs:109

[HttpException (0x80004005): Virtual file not found]
   System.Web.HttpApplicationFactory.EnsureAppStartCalledForIntegratedMode(HttpContext context, HttpApplication app) +9935033
   System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext, HttpContext context, MethodInfo[] handlers) +118
   System.Web.HttpApplication.InitSpecial(HttpApplicationState state, MethodInfo[] handlers, IntPtr appContext, HttpContext context) +172
   System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext, HttpContext context) +336
   System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext) +296

[HttpException (0x80004005): Virtual file not found]
   System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +9913572
   System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +101
   System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +254

Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.18408