ashx方法调用 - 使可重用

时间:2012-05-27 03:57:12

标签: c#

我有一个ashx文件,可以为我创建一个二进制csv文件。我希望能够将任何通用列表传递给它。

我知道我可以将列表放入会话中,然后在通用处理程序中将其拾取,但在重载下是否可接受?

   byte[] csvData = Utility.ToCsv(",", DAL.GetProducts());

    context.Response.OutputStream.Write(csvData, 0, csvData.Length);

如果我可以在处理程序中运行任何查询(而不是硬编码DAL.GetProducts()),那将是很好的。有什么方法可以做到这一点?

1 个答案:

答案 0 :(得分:0)

如果数据集高于可以序列化为QueryString数据的阈值,我只需创建一个HttpHandler,它接受列表作为序列化的POST数据。这样你的所有ToCsv()处理程序需要做的是从post数据中获取列表,然后反序列化。

如果您需要我详细说明这一点,请告诉我。