WCF自定义编码器-在运行时分配消息内容类型

汤姆·克霍夫(Tom Kerkhove)

我目前正在构建自己的WCF编码器,以解析我的消息。我想动态更改发送回复时分配的内容类型,但是我无法理解他正在寻找的内容。

他使用的是CustomTextEncoder.ContentType还是innerencoder的内容类型?如何强制他将响应以“ text / xml”或“ application / soap + xml”的形式发送?

先感谢您。

编辑-只是为了阐明我需要对我的自定义编码器的WriteMessage方法中的决定。我正在使用一个字符串属性,其中包含请求的内容类型,但是他没有正确执行。

public class MyEncoder : MessageEncoder
{
    private string _contentType = "application/soap+xml";

    public override string ContentType
    {
        get
        {
            return _contentType;
        }
    }

    public override ArraySegment<byte> WriteMessage(Message message, int maxMessageSize, BufferManager bufferManager, int messageOffset)
    {
        ...

        if (_MY_CONDITION_HERE_)
        {
            _contentType = "multipart/related";
        }
        else
            _contentType = "application/soap+xml";

        ...
     }
}

不幸的是,当我发送消息时,他仍在分配编码器的默认值...

汤姆·克霍夫(Tom Kerkhove)

似乎无法更改入站请求的内容类型,我的问题已通过使用Message Inspector进行了修复,在其中分配了所需的内容类型。(此链接对我有帮助)

提提您-来自编码器的ACK没有通过消息检查器,因此它使用ContentType属性。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用logback使用自定义编码器限制消息大小

WCF。在自定义编码器中绑定请求和响应

django JsonResponse 忽略的自定义编码器

WCF 自定义消息编码器使用 Soap1.2 即使我明确指定 1.1

如何使用Circe创建选项类型的自定义编码?

在 python 3.6 中处理自定义编码时遇到类型错误

在运行时定义的类型的列表

如何在Spark 2.X数据集中创建自定义编码器?

FluentValidation-如何在运行时自定义验证消息

在运行时分配NamedStoredProcedureQuery

自定义编码器/解码器,用于插入或获取mongo驱动程序的文档

按钮自定义内容不会在运行时呈现

使用自定义编码器实例化kafka生产者时,无法实例化

在运行时从自定义位置加载 HOCON 格式的类型安全配置

在运行时未定义枚举类型

简单注入器:在运行时替换注册类型

使用自定义分配器分配std :: vector并在运行时键入unknown

创建自定义案例类的数据集时,为什么“找不到用于存储在数据集中的类型的编码器”?

在运行时导出自定义EditorFormatDefinition

可以在运行时自定义FilterProvider吗?

如何在运行时根据通用类型定义和运行时类型参数构建Java类型对象?

运行时错误的自定义消息

自定义编码Python

WordPress和自定义编码

Java在运行时分配具体的实现对象

是否可以在运行时分配KnownNat?

如何在运行时分配组件名称?

在运行时阻止WCF消息记录在客户端应用程序中

Alamofire 3自定义编码到Alamofire 4自定义编码