मेरे पिछले प्रश्न: How to return file from ASP.net 5 web apiASP.NET 5 जाल एपीआई से फ़ाइल लौटें
मैं वेब एपीआई पोस्ट अनुरोध से प्रतिक्रिया के रूप में एक फाइल वापस जाने के लिए कोशिश कर रहा हूँ।
मैं dnx451 ढांचे और आरसी 1-फाइनल बिल्ड का उपयोग कर रहा हूं। नियंत्रक विधि:
[HttpPost("")]
public ActionResult Post([FromBody]DocumentViewModel vm)
{
try
{
if (ModelState.IsValid)
{
var Document = _repository.GetDocumentByGuid(vm.DocumentGuid, User.Identity.Name);
var Params = Helper.ClientInputToRealValues(vm.Parameters, Document.DataFields);
var file = Helper.GeneratePdf(Helper.InsertValues(Params, Document.Content));
FileStream stream = new FileStream(file,FileMode.Open);
return File(stream, "application/pdf", "test.pdf");
}
}
catch (Exception ex)
{
Response.StatusCode = (int)HttpStatusCode.BadRequest;
return null;
}
Response.StatusCode = (int)HttpStatusCode.BadRequest;
return null;
}
परिणामस्वरूप मुझे "प्रतिक्रिया" नाम वाली फ़ाइल मिलती है। इसे पीडीएफ के रूप में सहेजने के बाद मैं इसे खोलने की कोशिश करता हूं, और यह कहता है कि यह क्षतिग्रस्त है। क्या आपसे मुझे मदद मिल सकती है। मैं पोस्टमैन का परीक्षण क्लाइंट के रूप में उपयोग कर रहा हूं।
धन्यवाद
जब आप इस डिबग, कोड 'वापसी फ़ाइल()' सीमा तक पहुंच जाती है? प्रतिक्रिया में प्राप्त सामग्री और शीर्षलेख क्या है? – David
क्या आपकी 'हेल्पर.जेनरेट पीडीएफ()' लाइन सही तरीके से काम कर रही है? 'फाइल' का मूल्य क्या है? क्या फ़ाइल खोला जा सकता है, और आपने ब्राउज़र पर वापस भेजने से पहले फ़ाइल उत्पन्न होने का निरीक्षण किया था? –
हाँ पीडीएफ उत्पन्न होता है, और मैं फाइल एक्सप्लोरर से उत्पन्न पीडीएफ फ़ाइल खोल सकता हूं और यह ठीक है। –