1

我正在使用Compact Framework 2.0用於具有多種窗體的Windows CE 5.0設備中的應用程序。如何在C#中的所有窗體中提供字符串可用

我必須按順序使用一個連接字符串中幾乎所有的形式來訪問數據庫:

string conString = "Data Source=\\Program Files\\myproject\\database.sdf"; 

我想知道如果有可能使這個連接字符串莫名其妙的「全球」,以只能被寫入一次,並且可以從所有表單中訪問。

+4

你不應該硬編碼連接字符串。將它添加到應用程序的配置文件中。 – Steven

回答

7

按照@ Steven的評論,你應該在配置文件中添加這個,但是請參考下面的示例。

爲它創建一個類並使其成爲一個公共const字段。

public static class Globals 
{ 
    public const string conString = "Data Source=\\Program Files\\myproject\\database.sdf"; 
} 

然後在您的形式(或其他地方),你可以訪問它爲Globals.conString

+2

+1。如果它只包含靜態值,我可能會將該類標記爲靜態的。 – DoctorMick

+0

@DoctorMick。完成。 –

+0

如果這是最好的方法,我沒有反對使用應用程序的配置文件來做它。但我認爲compact-framework不支持app.config文件(如果我錯了,請糾正我)。所以我認爲我必須使用你寫的那樣的課。謝謝! – rfc1484

2

爲了更靈活,您可以使用只讀關鍵字。只讀成員在運行時被初始化,並且可以容納複雜的對象。

public class DataBaseConfiguration 
{ 
    public readonly String conStr; 

    public DataBaseConfiguration(String conString) 
    { 
      this.conString = conString; 
    } 
} 
相關問題