使用Rotativa在AspNetCore中将Html转换为Pdf

3

我正在使用rotativa在asp net core 2.0中生成视图到pdf。

它可以很好地生成,但是我的疑问在于响应。如果我使用此代码块,它会在我点击按钮时自动下载:

@using (Html.BeginForm(null, null, FormMethod.Get, new { @action = action , @class="block"}))
{
    <button type="submit">Send</button>
}

但是我需要通过 ajax 发送请求。这也可以工作,但是当数据返回时,我不知道如何下载文件。例如,遵循 ajax 请求:

function pdf() {
    $.ajax({
        type: "GET",
        url: url,
        data: {
            'Id': Id,
            'p': p
        },
        beforeSend: function () {
            console.log('Wait...');
        },
        success: function (data) {
            console.log('Success! (I need to download file here)')
        },
        error: function (data) {
            alert('error');
        }
    });
}

以下是我用于在服务器上生成代码的代码:
return new ViewAsPdf(view, obj) { FileName = product + ".pdf" };
1个回答

1

这个问题已经在这里得到了解答。

你可以动态创建一个锚点元素并通过编程方式单击它,或者使用下载js


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接