2012-10-31 73 views
3

我在安装了.NET 4.0的Windows IIS机器上安装了以下设置。 2个驱动器,C和D.包含我的网站的inetpub文件夹位于D驱动器上。
我唯一的网站会将附件保存到D盘。
我的C驱动器上没有空间(为了参数0kb)。ASP.NET应用程序磁盘上没有足够的空间

为什么当试图通过网站将附件上传到D驱动器时C盘是没有空间的时候会出现以下错误? .NET是否首先将它复制到C驱动器上的临时文件夹中?

这里的错误:

[IOException: There is not enough space on the disk. 
] 
    System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) +9718418 
    System.IO.FileStream.WriteCore(Byte[] buffer, Int32 offset, Int32 count) +9555882 
    System.IO.FileStream.Write(Byte[] array, Int32 offset, Int32 count) +146 
    System.Web.TempFile.AddBytes(Byte[] data, Int32 offset, Int32 length) +32 
    System.Web.HttpRawUploadedContent.AddBytes(Byte[] data, Int32 offset, Int32 length) +8788874 
    System.Web.HttpRequest.GetEntireRawContent() +9035719 
    System.Web.HttpRequest.GetMultipartContent() +68 
    System.Web.HttpRequest.FillInFormCollection() +247 
    System.Web.HttpRequest.get_Form() +104 
    System.Web.HttpRequest.get_HasForm() +9036655 
    System.Web.UI.Page.GetCollectionBasedOnMethod(Boolean dontReturnNull) +97 
    System.Web.UI.Page.DeterminePostBackMode() +69 
    System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +135 
+1

是的,该文件被临时复制到C驱动器上的“Temporary ASp.NET Files”文件夹中。 –

回答

8

您的IIS使用的临时文件夹是C驱动器上。这是造成这个问题的原因。

IIS试图写入的文件到通常位于下C:\Windows\Microsoft.net\Framework\<version>\Temporary ASP.NET Files

0

即使是临时文件,我面临着同样的奇怪的错误,当我跑我的WCF服务。从C:\ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ Temporary ASP.NET Files中删除临时asp.net文件后。我能够再次运行。

相关问题