Ответ на ваш вопрос заключается в том, что если ваш класс имеет это ConnectionString в качестве свойства, то объект SqlConnection здесь не может соединиться с чем-либо, поскольку ему было передано значение String.Empty.
Он магическим образом не вычисляет значение, просто никогда не будет подключаться ни к чему, поскольку у вас нет действительной строки подключения. Этот код на самом деле подключается? если это так, он не может использовать String.Empty, как вы описываете.
Для пояснения я ожидал бы, что строка подключения будет получена из какого-либо объекта настроек, либо из файла .config, либо другого подобного механизма.
Пытаясь помочь, я предполагаю, что вы используете ASP.net, как показано ниже, вы говорите о переменной post. Эти типы приложений обычно читают из файла web.config, как показано ниже.
Тогда ваша переменная строки подключения будет инициализирована фрагментом кода, который выглядит примерно так: если в элементах connectionString есть несколько ключей (отмеченных элементом add), то вы получаете доступ через индексатор, как показано.
ConnectionStringSettings connectionStringSettings = ConfigurationManager.ConnectionStrings["ApplicationServices"];
string connectionString = connectionStringSettings.ConnectionString;
код конфигурации:
<?xml version="1.0"?>
<!--
For more information on how to configure your ASP.NET application, please visit
http://go.microsoft.com/fwlink/?LinkId=169433
-->
<configuration>
<connectionStrings>
<add name="ApplicationServices"
connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnetdb.mdf;User Instance=true"
providerName="System.Data.SqlClient" />
</connectionStrings>
<system.web>
<compilation debug="false" targetFramework="4.0" />
<authentication mode="Forms">
<forms loginUrl="~/Account/Login.aspx" timeout="2880" />
</authentication>
<membership>
<providers>
<clear/>
<add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="ApplicationServices"
enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false"
maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10"
applicationName="/" />
</providers>
</membership>
<profile>
<providers>
<clear/>
<add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ApplicationServices" applicationName="/"/>
</providers>
</profile>
<roleManager enabled="false">
<providers>
<clear/>
<add name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider" connectionStringName="ApplicationServices" applicationName="/" />
<add name="AspNetWindowsTokenRoleProvider" type="System.Web.Security.WindowsTokenRoleProvider" applicationName="/" />
</providers>
</roleManager>
</system.web>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
</configuration>