0
進出口文件上傳後更改文件名,但是當我運行無法使用的WebAPI上傳文件中使用的WebAPI MultipartFormDataStreamProvider
request.Content.ReadAsMultipartAsync(provider)
的文件上傳,但其文件名是徹底改變。 我讀了一些關於它的信息,說它是出於安全原因自動生成的。無論如何,我想存儲文件的真實文件名。任何想法如何做到這一點?
進出口文件上傳後更改文件名,但是當我運行無法使用的WebAPI上傳文件中使用的WebAPI MultipartFormDataStreamProvider
request.Content.ReadAsMultipartAsync(provider)
的文件上傳,但其文件名是徹底改變。 我讀了一些關於它的信息,說它是出於安全原因自動生成的。無論如何,我想存儲文件的真實文件名。任何想法如何做到這一點?
這個簡單的替代解決這個問題
public class MyMultipartFormDataStreamProvider : MultipartFormDataStreamProvider
{
public MyMultipartFormDataStreamProvider(string path) : base(path)
{ }
public override string GetLocalFileName(System.Net.Http.Headers.HttpContentHeaders headers)
{
// override the filename which is stored by the provider (by default is bodypart_x)
string originalFileName = headers.ContentDisposition.FileName.Trim('\"');
return originalFileName;
}
}