在我的应用程序中,我实现了一个动态连接字符串,它直接从app.config
文件中获取值。但在获取值之前,我将值分配给标签文本并从连接字符串中调用它。我希望直接从字符串中获取该值而不使用标签
这是我的代码
dbserverip.Text = ConfigurationManager.AppSettings["serverip"].ToLower().Trim();
curport.Text = ConfigurationManager.AppSettings["dbport"].ToLower().Trim();
currentdb.Text = ConfigurationManager.AppSettings["defdatabase"].ToLower().Trim();
将值分配给标签后,我从连接字符串中调用它,如下所示:
string constring = string.Format(
"datasource='{0}';port='{1}';database='{2}';username=uwloanmanmain;password=XXXXXXXX;Connect Timeout=180;Command Timeout=180",
dbserverip.Text, curport.Text, currentdb.Text);
但我想在不使用任何标签的情况下这样做。只使用字符串值。我怎样才能做到这一点?
答案 0 :(得分:1)
将dbserverip.Text
替换为ConfigurationManager.AppSettings["serverip"].ToLower().Trim()
,curport.Text
替换为ConfigurationManager.AppSettings["dbport"].ToLower().Trim()
,将currentdb.Text
替换为ConfigurationManager.AppSettings["defdatabase"].ToLower().Trim()
string constring = string.Format("datasource='{0}';port='{1}';database='{2}';username=uwloanmanmain;password=xxxxxxxxxxxx;Connect Timeout=180;Command Timeout=180",
ConfigurationManager.AppSettings["serverip"].ToLower().Trim(),
ConfigurationManager.AppSettings["dbport"].ToLower().Trim(),
ConfigurationManager.AppSettings["defdatabase"].ToLower().Trim());
答案 1 :(得分:1)
我想在构建连接字符串的地方,您无法访问ConfigurationManager
。我看到解决这个问题的方法是创建一个单独的类型/类,一旦填充了现在填充标签的地方的配置数据,就可以在程序的各种类型中使用。
此类信息对于使用SecureString类也很有用。
答案 2 :(得分:0)
您可以使用这样的字符串变量。
string sdbserverip = ConfigurationManager.AppSettings["serverip"].ToLower().Trim();
string scurport = ConfigurationManager.AppSettings["dbport"].ToLower().Trim();
string scurrentdb = ConfigurationManager.AppSettings["defdatabase"].ToLower().Trim();
string constring = string.Format("datasource='{0}';port='{1}';database='{2}';username=uwloanmanmain;password=xxxxxxxxxxxxxxx;Connect Timeout=180;Command Timeout=180", sdbserverip, scurport, scurrentdb);