我正在C#中的Windows服務工作,也許我可能會在我的Web應用程序中使用相同的方法,如果它的工作。主服務使用一個用於自身的sqlconnection,它使用ConfigurationManager從app.config中檢索,並創建一些不同類型的線程來運行多個任務。每個線程都有自己的連接(存儲在類屬性中)。是公共靜態sql連接安全
public partial class MainService : ServiceBase{
private static string SQLConnStr;
protected static SqlConnection SQLConn;
}
class OtherClass{
private sqlconnection sqlconn;
private string connstr;
}
,我堅持的部分,是當我創建另一個對象類型,我需要使用對象OtherClass'連接才能訪問數據庫。這個新對象是在OtherClass中創建並調用的,以供稍後處理。
是否有可能重新使用從OtherClass的SQL連接? 將sql連接字符串設置爲公共靜態是否安全? 我使用的設計不好嗎?
最好的做法是把你的連接字符串放在Web.config文件中。 –
你想要的答案取決於情況。如果它是一個類庫,一切都將被編譯成一個DLL。在這種情況下,使用該DLL的人也可以訪問連接字符串(如果它是公共的)。我認爲這不安全。 –
你是說如果我把類放在一個dll中,不管它是私人還是公共? – cSharpDev