3

在 webforms 中,我们会做这样的事情来设置一个处理程序来生成一个动态图像:

<img src="/barchart.aspx?width=1024&height=768&chartId=50" >

然后当然我们会在 .aspx 页面上编写代码来使用参数呈现图像并将其写回响应中。

老实说,我不确定如何使用 MVC 设置/处理这样的请求,以及我们如何从视图中激活它(一般而言)。

非常欢迎提前提供任何指示或帮助。

4

2 回答 2

5

如果我正确理解情况:

public class ImageGeneratorController : Controller {
    public ActionResult BarChart(int width, int height, int chartId) {
        // ASP.NET MVC will map the request parameters to method arguments
    }
}

要创建链接:

Url.Action("BarChart", "ImageGenerator", new {
    width = 1024,
    height = 768,
    chartId = 50
});

将输出:

/ImageGenerator/BarChart?width=1024&height=768&chartId=50
于 2009-04-28T15:39:24.280 回答
2

你不需要一个视图来实现这一点。您可以有一个返回 aFileResult并将图像写入响应的操作,如下所示:

public FileResult BarChart(int width, int height, int chartID) {
    //create the chart
    return new FileContentResult(byte[] fileContents, string contentType);
}

和 html :

<img src="/yourController/BarChart/1024/768/50">
于 2009-04-28T15:45:25.293 回答