public static String ConnectionString(CaseBusiness.Framework.BancoDeDados banco) { if (_habilitaAcessoDadosPrivados) { try { CaseBusiness.Framework.BancoDados.Entidade.Configuracao conf = null; BancoDados.Processo.Configuracao confProcesso = new CaseBusiness.Framework.BancoDados.Processo.Configuracao(); conf = confProcesso.BuscarStringConexao(banco); return(conf.StringConexao); } catch (System.Exception ex) { CaseBusiness.Framework.Log.Log.LogarArquivo("ConnectionString: " + ex.Message + ex.InnerException, CaseBusiness.Framework.Log.TipoEventoLog.Erro, "Case Framework"); throw; } } else { throw new System.Exception("Informe a chave de acesso para ter acesso aos dados."); } }
internal void IdentificaComunicacaoAplicacaoLocalRemota() { try { CaseBusiness.Framework.BancoDados.Entidade.Configuracao conf = null; CaseBusiness.Framework.BancoDados.Processo.Configuracao confProcesso = new CaseBusiness.Framework.BancoDados.Processo.Configuracao(); conf = confProcesso.BuscarStringConexao(CaseBusiness.Framework.Configuracao.Configuracao.BancoPrincipal); Boolean conexaoViaIP = true; if (conf != null) { IPAddress ipAddr = null; String ipOuNome = ""; String host = ""; String[] pIP = null; Int32 ipOut = Int32.MinValue; Byte[] ip = new Byte[4]; if (conf.Servidor.IndexOf(@"\") > -1) { ipOuNome = conf.Servidor.Remove(conf.Servidor.IndexOf(@"\")).Replace(".", ""); } else { ipOuNome = conf.Servidor.Replace(".", ""); } if (Int32.TryParse(ipOuNome, out ipOut)) { if (conf.Servidor.IndexOf(@"\") > -1) { pIP = conf.Servidor.Remove(conf.Servidor.IndexOf(@"\")).Split('.'); } else { pIP = conf.Servidor.Split('.'); } ip[0] = Convert.ToByte(pIP[0]); ip[1] = Convert.ToByte(pIP[1]); ip[2] = Convert.ToByte(pIP[2]); ip[3] = Convert.ToByte(pIP[3]); ipAddr = new IPAddress(ip); conexaoViaIP = true; } else { conexaoViaIP = false; if (conf.Servidor.IndexOf(@"\") > -1) { host = conf.Servidor.Remove(conf.Servidor.IndexOf(@"\")); } else { host = conf.Servidor; } } using (System.Net.Sockets.TcpClient tcpSocket = new System.Net.Sockets.TcpClient()) { IAsyncResult async = null; if (conexaoViaIP) { async = tcpSocket.BeginConnect(ipAddr, Convert.ToInt32(conf.Porta), new AsyncCallback(Result), null); } else { async = tcpSocket.BeginConnect(host, Convert.ToInt32(conf.Porta), new AsyncCallback(Result), null); } DateTime startTime = DateTime.Now; do { System.Threading.Thread.Sleep(500); if (async.IsCompleted) { break; } }while (DateTime.Now.Subtract(startTime).TotalSeconds < 5); if (async.IsCompleted) { tcpSocket.EndConnect(async); CaseBusiness.Framework.Configuracao.Configuracao._tipoComunicacao = TipoComunicacao.Local; } tcpSocket.Close(); if (!async.IsCompleted) { //DataSet ds = null; //CaseWSFramework.FrameworkSoapClient fWS = new CaseWSFramework.FrameworkSoapClient(); //CaseWSFramework.App app = CaseWSFramework.App.CaseManagerCliente; //ds = fWS.BuscarConfiguracao(app); //CaseBusiness.Framework.Configuracao.Configuracao._tipoComunicacao = TipoComunicacao.Remota; } } } } catch (SocketException) { //DataSet ds = null; //CaseWSFramework.FrameworkSoapClient fWS = new CaseWSFramework.FrameworkSoapClient(); //CaseWSFramework.App app = CaseWSFramework.App.CaseManagerCliente; //ds = fWS.BuscarConfiguracao(app); //CaseBusiness.Framework.Configuracao.Configuracao._tipoComunicacao = TipoComunicacao.Remota; } catch (System.Exception ex) { CaseBusiness.Framework.Configuracao.Configuracao._erroInicializacao = "Erro: " + ex.Message; CaseBusiness.Framework.Log.Log.LogarArquivo("Erro: " + ex.Message + " " + ex.StackTrace, CaseBusiness.Framework.Log.TipoEventoLog.Erro, "Case Framework"); if (ex.InnerException != null) { CaseBusiness.Framework.Log.Log.LogarArquivo("Erro: " + ex.InnerException.ToString() + " " + ex.StackTrace, CaseBusiness.Framework.Log.TipoEventoLog.Erro, "Case Framework"); } throw; } }