OpenRasta - 将参数传递给自定义编解码器

时间:2010-01-13 11:17:29

标签: openrasta

我为OpenRasta创建了一个新的自定义JSON编解码器,工作正常。

执行处理程序时,我需要将参数传递给编解码器的write方法,但无法找到有关如何执行此操作的任何文档。

我注意到在实现的WriteTo方法中,有一个string[] codecParameters参数,但不知道如何传递它们。

之前有人遇到过这个问题吗?感谢

1 个答案:

答案 0 :(得分:3)

编解码器参数是按请求的。它们旨在与(例如)PathSegmentAsParameterUriDecorator一起使用。

例如,如果启用该装饰器,则路径/资源;段将被openrasta视为/ resource,并且将使用“segment”值创建参数,并将其传递给编解码器。

如果你希望从处理程序向编解码器传递信息,那么就没有任何东西,因为它在架构上违背了OpenRasta的设计,它专门阻止处理程序和编解码器彼此交谈。

如果您希望将配置数据传递到编解码器,可以使用ICodec接口中的Configuration属性,该属性将填充您在配置时提供的任何对象。

您可以通过.TranscodedBy(对象配置)方法中的参数提供配置对象,或者如果您使用配置元模型进行自定义注册,则可以将配置添加到CodecModel上的Configuration属性中(该命令无意中用于由流畅的API创建的ResourceModel对象。

您是否有我可以帮助的具体方案?