gpt4 book ai didi

c# - 如何使用在if语句中声明的变量?

转载 作者:太空宇宙 更新时间:2023-11-03 17:34:25 24 4
gpt4 key购买 nike

上次我有一个类似的问题,但是我们弄清楚了是否在逻辑语句之前初始化变量并为其设置值,然后我可以使用在逻辑语句中生成的值。

这次,我想根据连接字符串是否为空来调用两个方法重载之一。像这样

if (ConnectionString != "") // if there is something in the config file work with it
{
SqlConnection dataConnection = new SqlConnection(ConnectionString);
}
else
{
SqlConnection dataConnection = new SqlConnection();
}

try {
// ...


问题是try块中的任何内容都会失败,因为它不了解dataConnection。

我如何才能使其正常工作?

最佳答案

在外部声明(未初始化):

SqlConnection conn;
if(string.IsNullOrEmpty(connectionString)) {
conn = new SqlConnection();
} else {
conn = new SqlConnection(connectionString);
}


如果逻辑很简单,那么也可以有条件的:

SqlConnection conn = string.IsNullOrEmpty(connectionString)
? new SqlConnection() : new SqlConnection(connectionString);


后者更容易与 using块一起使用,因为它可以内联完成。

关于c# - 如何使用在if语句中声明的变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6724098/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com