SUBSONIC MYSQL SharedDbConnectionScope TransactionScope - PullRequest
1 голос
/ 26 мая 2009

Следующий код нормально работает в SQLSERVER, но когда я изменяю web.config на mySQL после loadbykey , соединение закрывается.

есть ли какая-либо конфигурация в MYSQL, чтобы это изменить ???

спасибо за любую помощь !!!

    //-----------------------------------------------------------
    string tipoBanco = System.Configuration.ConfigurationManager.AppSettings["tipoBanco"];
    string conexao = System.Configuration.ConfigurationManager.ConnectionStrings[tipoBanco].ToString();

    using (SharedDbConnectionScope scope = new SharedDbConnectionScope(conexao))
    {
        //-----------------------------------------------------------
        using (TransactionScope ts = new TransactionScope())
        {
            Cargo c = new Cargo();
            c.LoadByKey(9999);

            SubSonic.StoredProcedure sp = null;
            sp = new SubSonic.StoredProcedure("sp_test");
            sp.Command.AddParameter("paramTabela", "zzz", DbType.AnsiStringFixedLength, null, null);

            Convert.ToInt32(sp.ExecuteScalar());
        }
    }

the web.config

<SubSonicService defaultProvider="mysql" enableTrace="false" templateDirectory="">
    <providers>
        <clear/>
  <add name="mysql" type="SubSonic.MySqlDataProvider, SubSonic"
             regexDictionaryReplace="Empresaendereco,EmpresaEndereco;Empresacontato,EmpresaContato;Franqueadoendereco,FranqueadoEndereco;Franqueadocontato,FranqueadoContato;Funcionarioacesso,FuncionarioAcesso;Funcionarioendereco,FuncionarioEndereco;Funcionariocontato,FuncionarioContato;Clienteendereco,ClienteEndereco;Clientecontato,ClienteContato;Clientehistorico,ClienteHistorico;Agendastatus,AgendaStatus;Historicostatus,HistoricoStatus"
             fixDatabaseObjectCasing="true" connectionStringName="mysql"
             generateRelatedTablesAsProperties="true"
             fixPluralClassNames="false"
             generatedNamespace="ModeloDados"
             regexIgnoreCase="true"
             removeUnderscores="false"
             setPropertyDefaultsFromDatabase="true"
             generateNullableProperties="true"
             useExtendedProperties="true"
             useUtc="true" />

</providers>
</SubSonicService>

1 Ответ

3 голосов
/ 26 мая 2009

Я думаю, что ваши TransactionScope () и SharedDbConnectionScope () неверны. Они у вас есть в том порядке, в котором они перечислены в документации на веб-сайте SubSonic, но на старом форуме SubSonic шла дискуссия, в которой предполагалось, что они должны быть наоборот.

Конечно, я использую их в обратном порядке (я только что разместил фрагмент своего кода для другого ответа здесь), но я должен сказать, что я использую только MSSQL ATM и не могу комментировать MySQL.

...