我有2个数据库现在(A和B数据库)。A数据库的联接是通过配置文件(App.config)中的ConnectionStrings联接的。解析使用ConfigurationManager.GetSection("ExtendedConnectionStrings")。B数据库的接续信息存放在A数据库中。解析后是字符串。并且是加密的。
无法使用ConfigurationManager解析字符串。如何不生成临时XML文件仍然可以解析?PS:使用ConfigurationManager来解析是因为配置文件都是加密的。使用的是MS的加密方式。用ConfigurationManager可以进行解密加密的操作。所以不能用XML的那个解析方法/

解决方案 »

  1.   

    A数据库存储B数据库的连接信息直接用XML格式字符串存储,如何?
      

  2.   

    谢谢楼上的。
    C#提供一种叫ProtectedConfigurationProvider类。负责加密解密配置文件。A数据库中存储的的确是XML格式的配置文件信息。可是是加密的信息。读出来后调用ConfigurationManager.GetSection(XXXX)可以自动解密。现在的问题是ConfigurationManager都是制定文件的路径阿。可我读取出来的是字符串。就是想不让他生成临时文件也能够解析。
      

  3.   

    B库中的加密字符串可以另作工具获得加密后的串写入数据库配置文件解密--------数据库A联接-----读在库A中的库B的联接信息(跟配置文件中格式一样,XML格式)---数据库B联接----信息检索。
      

  4.   

    现在的设计要求AB库的联接是有顺序的。先A后B。要求B的联接信息必须放在A库中。
      

  5.   

    B的连接信息只能用ConfigurationManager解密吗?
    换种别的方式加密,解密也可以啊~
      

  6.   

    艾~~~~
    老大要求啥就用啥啊。。郁闷ing。。
      

  7.   

    有做过使用ProtectedConfigurationProvider类进行加密解密的朋友吗??
      

  8.   

    XmlDocument.Load(new MemoryStream(System.Text.Encoding.Default.GetBytes(yourXmlStringFromDataBase)))
      

  9.   

    晕,xmlDoc.Load(new StringReader(yourXmlStringFromDataBase))简单些
      

  10.   

    楼上的load完以后呢?
    如何解析里面的Section呢?
      

  11.   

    你这个是以XML格式开文档。汗。。这样只能通过XmlDocument 类解析吧??我的串都是加密的。要使用Configuration Config = ConfigurationManager.OpenExeConfiguration(strPath);
    来解析指定路径的文档。这样才能自动调用net的机制解密和加密。
      

  12.   

    你重写的解密方法,它的参数也是XmlNode吧;如果用OpenExeConfiguration,那B的连接字串也只能放在配置文件了。只要能调用解密的方法,应该就可以了。