C# 什么字符是html编码的?

C# 什么字符是html编码的?,c#,soap,C#,Soap,TL;DRDü;sseldor编码为Dü塞尔多,杜塞尔多夫没有被编码(默认的MVC编码)为什么 我正在构建一个具有soap访问的api。当我收到一个请求时,我用html编码所有数据。 在结束当前请求之前,我复制Response.Stream并将其保存以进行日志记录 我注意到Düsseldorf由我的api编码为“Dü;sseldorf”。这是意料之中的。 但在我的日志中,它显示Düsseldorf编码为“D&;#252;sseldorf”(双重编码),我的日

TL;DRDü;sseldor编码为Dü塞尔多,杜塞尔多夫没有被编码(默认的MVC编码)为什么

我正在构建一个具有soap访问的api。当我收到一个请求时,我用html编码所有数据。 在结束当前请求之前,我复制Response.Stream并将其保存以进行日志记录

我注意到Düsseldorf由我的api编码为“Dü;sseldorf”。这是意料之中的。 但在我的日志中,它显示Düsseldorf编码为“D&;#252;sseldorf”(双重编码),我的日志在MVC序列化写入响应流后保存

我认为这是因为soap在通过网络发送值之前对其进行编码

所以我的下一个测试是关闭api中的html编码。 所以这次杜塞尔多夫给了soap序列化程序

但它被编码为杜塞尔多夫

编辑:当我说打开/关闭编码时,我的意思是请求中的每个字段,我使用HttpUtility.HtmlEncode(“某个字段”)。并将其保存到数据库中。然后我用MVC视图返回数据,如下所示:

public ActionResult CreateAccessCode ( CreateAccessCodeRequest request )
{
    var response = new Response (request);
    return new ContentResult (response);
}

我的问题是,当ContentResult方法运行时,它似乎自己进行了一些编码,我想知道这是什么?

SOAP使用XML-HTML和XML需要稍微不同的编码,但在您的情况下,这可能是一个问题,也可能不是一个问题


更有可能的是,您的手动XML构造是不正确的。请不要使用字符串连接构造XML—XDocument/XmlDocument更适合于此

你的问题有点让人困惑。如果禁用html编码,这不是预期的结果吗?另外,当您关闭html编码时,您的日志中有什么内容?如果我有很好的内存,我记得我使用了XmlDocument类,并添加了childrens/值,使用应用的编码获取文档。尝试使用
System.Xml.XmlDocument
我不手动创建Xml。我使用内置的.netmethods@user1909158鉴于“我使用内置的.net方法(使用XML)”,您的语句“我对所有数据进行html编码”听起来不正确。您可能应该使用示例文本/代码更新您的问题,以便清楚您有什么问题。