asp.net-mvc - kendo - telerik grid mvc




ASP.NET MVC: إرجاع ملف نص عادي لتحميل من طريقة تحكم (2)

ضع في اعتبارك الحاجة إلى إرجاع ملف نص عادي من طريقة وحدة تحكم مرة أخرى إلى المستدعي. تكمن الفكرة في تنزيل الملف ، بدلاً من عرضه كنص عادي في المتصفح.

لدي الطريقة التالية ، وأنها تعمل كما هو متوقع. يتم تقديم الملف إلى المستعرض للتنزيل ، ويتم ملء الملف بالسلسلة.

أود أن أبحث عن تنفيذ "أكثر دقة" لهذه الطريقة ، لأنني لست مرتاحًا بنسبة 100٪ مع نوع إرجاع void .

public void ViewHL7(int id)
{
    string someLongTextForDownload = "ABC123";

    Response.Clear(); 
    Response.ContentType = "text/plain";
    Response.AddHeader("Content-Disposition", string.Format("attachment; filename={0}.hl7", id.ToString()));
    Response.Write(someLongTextForDownload);
    Response.End();
}

استخدم الأسلوب "ملف" على فئة جهاز التحكم لإرجاع FileResult

public ActionResult ViewHL7( int id )
{
    ...

    return File( Encoding.UTF8.GetBytes( someLongTextForDownLoad ),
                 "text/plain",
                  string.Format( "{0}.hl7", id ) );
}

ستحتاج إلى إرجاع FileContentResult من الطريقة الخاصة بك.







download