我在C#上运行了一个很长时间的C#MVC网站。最近,我在记录器数据中注意到此日志消息:
System.IO.IOException: The network name cannot be found.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileSystemEnumerableIterator`1.CommonInit()
at System.IO.FileSystemEnumerableIterator`1..ctor(String path, String originalUserPath, String searchPattern, SearchOption searchOption, SearchResultHandler`1 resultHandler, Boolean checkHost)
at System.IO.Directory.EnumerateFiles(String path)
at System.Web.WebPages.Deployment.WebPagesDeployment.AppRootContainsWebPagesFile(String path)
at System.Web.WebPages.Deployment.PreApplicationStartCode.OnChanged(String key, Object value, CacheItemRemovedReason reason)
at System.Web.Caching.CacheEntry.CallCacheItemRemovedCallback(CacheItemRemovedCallback callback, CacheItemRemovedReason reason)
我也知道:
ASP.global_asax
文件引发此异常。 如您所见,我的代码中没有这个调用栈。因此,我不知道该如何重现或解决此问题。
您如何建议我解决这个问题?任何提示都会有所帮助。
最佳答案
查看source code,此异常由框架本身触发。
它尝试枚举HttpRuntime.AppDomainAppPath中的所有文件。在您的情况下,此路径似乎并不总是可用,这似乎有些奇怪。您在哪里托管文件?
我建议您记录HttpRuntime.AppDomainAppPath
的值并从那里搜索。我认为这将是一个不寻常的值(value)。
关于c# - IOException:找不到网络名称,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36422473/