เราได้เริ่มใช้ Azure blob storage api เพื่อจัดเก็บ blobs ที่อัปโหลดบนไซต์ของเรา รูปภาพทำงานได้ดี แต่เมื่อเราอัปโหลดเอกสาร word/excel และส่งคืน URL และลองดาวน์โหลดไฟล์จาก URL นั้นและเปิดมัน เราจะได้รับ เกิดข้อผิดพลาดใน Excel หรือ Word โดยพูดว่า:
"Excel ไม่สามารถเปิดไฟล์ "somefile.xlsx" ได้เนื่องจากรูปแบบหรือนามสกุลไฟล์ไม่ถูกต้อง ตรวจสอบให้แน่ใจว่าไฟล์ไม่เสียหายและนามสกุลไฟล์ตรงกับรูปแบบของไฟล์"
ฉันรู้ว่าฉันต้องพลาดบางสิ่งบางอย่างที่ชัดเจน แต่ไม่แน่ใจว่าอะไร ด้านล่างนี้คือโค้ดที่เราใช้:
CloudBlobContainer container = GetCloudBlobContainer();
Guid guid = Guid.NewGuid();
string storeFilename = String.Concat(mediaType.ToString(), "/", guid, "_", filename);
var blob = container.GetBlobReference(storeFilename);
blob.Properties.ContentType = contentType;
blob.UploadFromStream(stream);
return blob.Uri.AbsolutePath;
เราจะส่งคืน URL และจัดเก็บสิ่งนั้นไว้กับไฟล์ที่อัปโหลด และใช้เป็นลิงก์ในการดาวน์โหลดไฟล์
ไฟล์ดาวน์โหลดไฟล์ได้ดี โดยมีขนาดเท่ากับไฟล์ที่อัปโหลดแต่เปิดไม่ได้
ความช่วยเหลือใด ๆ จะได้รับการชื่นชมอย่างมากเนื่องจากจะต้องเป็นสิ่งที่ชัดเจนมาก แต่ฉันกลัวว่ามันจะหลบเลี่ยงฉัน