1
我想要一個包含字符串鍵和值的字典對象,它們是從數據庫中生成的。但是,我只需要在頁面加載時運行一次。 (C#.NET)創建一個靜態字典對象,用數據庫中的值填充
以哪種方式可以做到這一點?我試過如下:
public static class GlobalVar
{
static Dictionary<string, string> GenerateLoginStatus(Dictionary<string, string> List)
{
string Query = "SELECT * FROM LoginStatus";
DataTable Types = MyAdoHelper.ExecuteDataTable(GlobalVar.dbName, Query);
foreach (DataRow Row in Types.Rows)
{
List.Add(Row["Status_Title"].ToString(), Row["Status_Info"].ToString());
}
return List;
}
public const string GlobalString = "ProjectDatabase.mdf";
public static Dictionary<string, string> LoginTypes = GenerateLoginStatus(LoginTypes);
}
表結構:
Status_Title Status_Info
AlreadyLoggedIn User is already logged in.
A B
C D
我用它在另一個頁面:GlobalVar.LoginStatus["AlreadyLoggedIn"]
的「AlreadyLoggedIn」在數據庫中肯定被創建,但我當調用任何鍵,它會返回一個異常(不會告訴哪個異常)。
編輯:我改變了一下代碼,它現在給出了「GlobalVar的類型初始值設定項」引發了一個異常。「
這是ASP.NET還是WinForms或WPF? – ericb 2012-04-17 20:14:21
你知道它拋出一個異常,但它不告訴你哪一個?你有沒有嘗試加入或者嘗試一些try catch塊? – Xaisoft 2012-04-17 20:15:02
我非常懷疑這個例外是不可用的,除非你自己吞下了這些信息。 – 2012-04-17 20:15:06