2013-04-26 72 views
0

我做了一個名爲Crypto的類來加密en解密連接字符串。這門課完美運作。解密與實體框架的連接字符串

的想法是讓加密的ConnectionString在配置文件中:

<add name="MyConnString" connectionString="KsY+XWC0GnsepTlVu0Z3BU4r0hCAfgrCl/gbqlasndFmCjq0iiTNC7r0JySqm4BtSnSktE20EfDe9F3cDZTaQqwUgmdQTrxBc8cp5HhC9G6PEyzXIVzy2HMyOIH45yTQ9j70uMPV7TUazlnvzRDYnrKJwpgHNQehjMovgkWKCfZji1kQNVN7/61yvdrv+d6KpQKU5Al5W2QKkI7wxYzvJ4vMwH6XoCk1RnulKFKvaMExWtjQTh4XOy2Wo4M9UHKM/FuhjrsxsBg4JgcUcPGfrJZortFmmeDYt7D7QP6/I9HlIrmR4K42/hKSb/ZGiDV9szK6A/V1u9p5qctqFCui7Dx0AKkvUqFIWOWQHtvivV0R/PW8+R1bxsNkr6wUK6A5uPyghJmP4Qv0VI3vW8z0Tw==" providerName="System.Data.EntityClient" /> 

問題出在哪裏?如何解密(解密方法的工作) 我試過做這些調整ConnectionString中在EDMX文件中的設計類:

public partial class KlantenBITEntities : ObjectContext 
    { 
     public static string DecryptedConnectionString 
     { 
      get { return Crypto.DecryptFromBase64String(ConfigurationManager.ConnectionStrings["MyConnString"].ToString()); } 
     } 

並在構造函數我試圖通過解密的ConnectionString:

public KlantenBITEntities(): base(DecryptedConnectionString,"KlantenBITEntities") 
     { 

      this.ContextOptions.LazyLoadingEnabled = true; 
      OnContextCreated(); 
     } 

如果我這個我得到這個錯誤: 關鍵字不支持:我已經加密了整個實體框架的ConnectionString「數據源」

(與csdl-,ssdl-,MSL文件等。)這可能是原因嗎?

任何幫助找到一個正確的方法來解密實體框架連接字符串非常讚賞。

回答

相關問題