上次我有一个类似的问题,但我们想出如果在逻辑语句之前初始化并设置变量的值,那么我可以使用逻辑语句中生成的值.
这次,我想调用两个方法重载中的一个,具体取决于连接字符串是否为空.像这样.
if (ConnectionString != "") // if there is something in the config file work with it
{
SqlConnection dataConnection = new SqlConnection(ConnectionString);
}
else
{
SqlConnection dataConnection = new SqlConnection();
}
try {
// ...
Run Code Online (Sandbox Code Playgroud)
问题是try块中的任何内容都会失败,因为它不知道dataConnection.
我怎么能以一种方式使它工作?
你可以这样做:
SqlConnection dataConnection = !string.IsNullOrEmpty(ConnectionString)
? new SqlConnection(ConnectionString) : new SqlConnection();
Run Code Online (Sandbox Code Playgroud)
要么:
SqlConnection dataConnection;
if (string.IsNullOrEmpty(ConnectionString))
{
dataConnection = new SqlConnection(ConnectionString);
}
else
{
dataConnection = new SqlConnection();
}
Run Code Online (Sandbox Code Playgroud)