服务堆栈3 - 如何根据每个响应自定义?format = csv中附件的文件名?
我用谷歌搜索了这个,但唯一感兴趣的文章建议更换整个格式提供者,这似乎非常极端。
答案 0 :(得分:2)
如果您想要自定义行为来替换只有几行代码的CsvFormat,那就不是极端了:
Plugins.RemoveAll(x => x is CsvFormat);
Plugins.Add(new MyCsvFormat());
默认情况下,返回的文件名将是请求DTO名称,但是您可以将其更改为使用您自己的自定义CsvFormat,您可以通过先删除预先注册的CsvFormat然后注册自己的CsvFormat来添加,例如:< / p>
{{1}}
答案 1 :(得分:1)
您还可以通过设置Request.OperationName在服务方法中设置文件名。像这样:
public object Any(RequestWithFilename request)
{
...
if (!string.IsNullOrWhiteSpace(request.Filename))
Request.OperationName = request.Filename;
...
}