0

テキスト ファイルは簡単に作成できますが、ファイルをサーバーに保持する必要は避けたいと考えています。

メモリ内にテキスト ファイルを作成し、それを ajax 経由で返すにはどうすればよいですか? ファイル自体が返され、サーバーにファイルが保持されません。ajax である必要はありませんが、可能な限りポストバックを避けたいと考えています。

4

2 に答える 2

0

MVCまたはWebFormsを使用している場合、Vijayの答えは正しいです。

ポストバックの防止について、ポストバックを防止するために ajax を使用する必要はありません。

MVC を使用している場合はwindow.location、js でアクション メソッドを使用してポイントするだけです。何かのようなもの:

// In your controller:
public class HomeController : Controller
{
    public FileResult GetFile2(int id)
    {
        if (SomeCondition)
        {
           return null;
        }
        var fileName = "MyResult.txt";
        var content = "Here's the result";
        var contentType = "text/plain";
        return File(Encoding.ASCII.GetBytes(content), contentType, fileName);
   }

// And in your view/js file:
window.location.href = ('/Home/GetFile?id=1');  

HttpHandlerまた、Web フォームを使用している場合は、ダウンロード リンクを処理する を作成するのが最善の方法だと思います。優れたチュートリアルはこちらにあります

于 2013-05-10T13:03:21.167 に答える