2013-04-08 37 views
0

发生的事情让人困惑。 我使用这些如何比较两个字符串与unicode有一些不同?

(cert.SubjectName.Name.ToLower()) == (subjectName.ToLower() 

比较两个字符串。 虽然我总是得到错误,即使我可以看到这些字符串具有相同的值。 后来我弄清楚,如果我在文本visualizar打开值,选择显示的Unicode控制符 我找到第二个值具有| *开头。 enter image description here

为什么这些事? 我应该如何让这两个字符串返回给我?

+2

相反调整的比较,你应该找出原因'cert.SubjectName.Name'的开头有一个奇怪的字符。 – Heinzi 2013-04-08 09:16:21

+0

看起来它可能是某种不可打印的字符,如换行或换页。它的Unicode代码点是什么? – Thomas 2013-04-08 09:20:39

+0

HI cert.SubjectName.Name返回正确的值,它是subjectName。我在web.config文件中得到这些值:WebConfigurationManager.AppSettings [Common.SigningCertificateName] 我用ConfigurationManager.AppSettings [Common.SigningCertificateName]没有幸运 – EthenHY 2013-04-08 09:26:55

回答

0

可能是你的app.config包含怪异的性格,你可能无法在你的定期编辑器中看到:

<appSettings> 
    <add key="SigningCertificateName" value="<WEIRD-CHAR>CN=STSTestCert" /> 
</appSettings> 

尝试删除整个价值("CN=STSTestCert"),并重新键入它。

相关问题