2009-04-28 50 views
3

在网络表单,我们会做财产以后这样建立一个处理程序来生成图像dyanmic:asp.net mvc多参数请求动态图片?

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

我们当然会在.aspx页面上编写代码使用参数来呈现图像和写它回到了回应中。

我真的不知道如何设置/处理MVC的这样的请求,以及如何从视图中激活它(一般而言)。

任何提示或帮助提前大受欢迎。

回答

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 
+0

这就是我想要的。该URL看起来像映射到这个? – MikeJ 2009-04-28 15:42:52

+0

/BarChart/1024/768/50? – MikeJ 2009-04-28 15:43:36

2

你不需要为了达到这个。你可以有一个返回FileResult动作和写入图像以这样的回应:

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">