我尝试将文件上传到blob。但我得到的错误是这样的:
"' C:\ Program Files(x86)\ IIS 表达\主格-人员入境表格-Stu.docx'"
我在代码中没有使用HttpPostedFileBase。我只是通过要上传的文件将对象传递给我的控制器。租约告诉我,我做错了什么? 我想知道wt这行意味着:
" blockBlob.Properties.ContentType ="
这是我的代码:
public static SaveResponses CreateFile(Blob_Storage_Header docDetails)
{
string storageConnectionString = ConfigurationManager.ConnectionStrings["StorageConnectionString"].ConnectionString.ToString();
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(storageConnectionString);
CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
CloudBlobContainer container = blobClient.GetContainerReference("test2");
ICollection<Blob_Storage_Details> BlobStorageDetails = docDetails.Blob_Storage_Details;
if (BlobStorageDetails.Count > 0) {
foreach (Blob_Storage_Details item in BlobStorageDetails)
{
string DocUUID = Guid.NewGuid().ToString();
CloudBlockBlob blockBlob = container.GetBlockBlobReference(DocUUID + item.Blob_Name);
var fileName = Path.GetFileName(item.Blob_Name);
//blockBlob.Properties.ContentType = item.ContentType;
// Create or overwrite the "myblob" blob with contents from a local file.
using (var fileStream = File.OpenRead(fileName))
{
blockBlob.UploadFromStream(fileStream);
}
}
}
SaveResponses saveResponse = new SaveResponses();
saveResponse.saveStatus = "true";
saveResponse.messageType = "success";
saveResponse.message = "File Create message";
return (saveResponse);
}
答案 0 :(得分:0)
&#34;&#39; C:\ Program Files(x86)\ IIS Express \ Nominative-Officers-Entry-Form-Stu.docx&#39;。&#34;
根据你的代码,我在我身边运行它,然后我收到以下错误:
备注:在开发环境中,您可以在Web.config文件的system.web节点中添加“&lt; customErrors mode =&#34; Off&#34; /&gt;”,然后您可以查看详细错误
根据此错误,我检查并发现指定的文件路径不存在。 经过一些试验,我把问题解决了。请按照以下说明检查您的代码,看看它是否有效:
a)请注意代码“Path.GetFileName”,它返回指定路径字符串的文件名和扩展名(例如settings.job)。
b)确保“File.OpenRead(fileName)”中使用的文件名是绝对文件路径,并且该文件存在于您的环境中。
&#34; blockBlob.Properties.ContentType =&#34;
Azure存储客户端库for .NET基于Storage Service REST API, 从官方文档中我们可以发现“blockBlob.Properties.ContentType”表示blob的MIME内容类型,默认类型是application / octet-stream。
MIME是一种根据互联网的性质和格式识别互联网上文件的方法。例如,使用&#34;内容类型&#34;在HTTP响应中定义的头值,浏览器可以使用适当的扩展名/插件打开文件。有关MIME的更多详细信息,请参阅此链接:http://www.freeformatter.com/mime-types-list.html