gpt4 book ai didi

c# - HttpPostedFileBase.SaveAs 工作但没有文件上传也没有异常

转载 作者:太空狗 更新时间:2023-10-29 22:33:56 29 4
gpt4 key购买 nike

首先,这是我的代码:

private Shoe ProcessForm(Shoe shoe, HttpPostedFileBase image)
{
try
{
shoe.Slug = CMSHelper.SanitizeTitle(shoe.Name);
shoe.LastModification = DateTime.Now;

if ((image != null) && (image.ContentLength > 0))
{
string fileName = String.Concat(shoe.ShoeId, Path.GetExtension(image.FileName));
shoe.Image = fileName;

string filePath = Path.Combine(Server.MapPath(shoe.ImagePath), fileName);
image.SaveAs(filePath);
}
}
catch (Exception e)
{
throw e;
}

return shoe;
}

在本地,这段代码工作正常。目录的权限很好。它之前在其他服务器上随机工作过(我在测试 VPS 提供商时在 4 或 5 个不同的服务器上测试了这段代码)。

但如果我尝试从我的家用计算机运行它,一切正常,数据库中保存了一个文件名,但没有文件上传。没有异常(exception)!!!

我已经尝试解决这个问题将近三天了,而且花费了很多无用的时间,请帮助我...我只是不明白这有什么问题...

最佳答案

我终于做了一个非常好的解决方法。我什至问过我的工作,每个人都说没有任何问题。所以搞砸了这就是我所做的:

我没有调用 .SaveAs(),而是创建了一个方法:

public static void WriteFileFromStream(Stream stream, string toFile)
{
using (FileStream fileToSave = new FileStream(toFile, FileMode.Create))
{
stream.CopyTo(fileToSave);
}
}

我这样调用它:

CMSHelper.WriteFileFromStream(image.InputStream, filePath);

就是这样。

关于c# - HttpPostedFileBase.SaveAs 工作但没有文件上传也没有异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7656467/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com