序列化/反序列化的连接字符串是否区分大小写?

Krz*_*ter 0 .net c# serialization connection-string

如何以区分大小写的方式反序列化字符串?看起来序列化是区分大小写的,反序列化的重点是不区分大小写?

在此输入图像描述

更新:尝试本地化底层的地方和内容,我已经设置了DEBUGGER来下载符号并进入FCL .NET代码.我已经卡在这些代码附近(DbConnectionOptions.cs第873-921行):

private static NameValuePair ParseInternal(Hashtable parsetable, string connectionString, bool buildChain, Hashtable synonyms, bool firstKey) {
    Debug.Assert(null != connectionString, "null connectionstring"); 
    StringBuilder buffer = new StringBuilder();
    NameValuePair localKeychain = null, keychain = null;

        int nextStartPosition = 0; 
        int endPosition = connectionString.Length; 
        while (nextStartPosition < endPosition) {
            int startPosition = nextStartPosition; 

            string keyname, keyvalue;
            nextStartPosition = GetKeyValuePair(connectionString, startPosition, buffer, firstKey, out keyname, out keyvalue);
            if (ADP.IsEmpty(keyname)) { 
                // if (nextStartPosition != endPosition) { throw; }
                break; 
            } 

            string realkeyname = ((null != synonyms) ? (string)synonyms[keyname] : keyname);
            if (!IsKeyNameValid(realkeyname)) { 
                throw ADP.KeywordNotSupported(keyname); 
            }
Run Code Online (Sandbox Code Playgroud)

修改发生在while循环内部,它在每次迭代中查找另一个键/值对.不幸的是,我不能'key watch'到keyname和realkeyname变量.我想同义词Hashtable在这里也很重要.

  • 我怎样才能看到这些变量值?
  • 接下来我该怎么办才能找到确切的修改地点?

Mar*_*ell 5

因为(根据文档)连接字符串:

关键字不区分大小写.

的值,但是,大小写敏感的(很明显,对于密码等)