我为 OpenRasta 创建了一个新的自定义 JSON 编解码器,效果很好。
执行处理程序时,我需要将参数传递给编解码器的 write 方法,但找不到任何有关如何执行此操作的文档。
我注意到在实现的 WriteTo 方法中,有一个string[] codecParameters
参数,但是不知道如何传递它们。
以前有人遇到过这个问题吗?谢谢
我为 OpenRasta 创建了一个新的自定义 JSON 编解码器,效果很好。
执行处理程序时,我需要将参数传递给编解码器的 write 方法,但找不到任何有关如何执行此操作的文档。
我注意到在实现的 WriteTo 方法中,有一个string[] codecParameters
参数,但是不知道如何传递它们。
以前有人遇到过这个问题吗?谢谢
编解码器参数是每个请求的。它们旨在与(例如)PathSegmentAsParameterUriDecorator 一起使用。
例如,如果您启用该装饰器,则路径 /resource;segment 将被 openrasta 视为 /resource,并且将使用“segment”值创建一个参数,并将其传递给编解码器。
如果您希望将信息从处理程序传递给编解码器,那么那里什么都没有,因为在架构上它违背了 OpenRasta 的设计,它专门阻止处理程序和编解码器相互通信。
如果您希望将配置数据传递给编解码器,请使用 ICodec 接口中的 Configuration 属性,该属性将填充您在配置时提供的任何对象。
您可以通过 .TranscodedBy(object configuration) 方法中的参数提供配置对象,或者如果您使用配置元模型进行自定义注册,则将配置添加到 CodecModel 上的 Configuration 属性(顺便在创建的 ResourceModel 对象中使用由流利的API)。
你有我可以帮助的具体情况吗?