public void Indexe(Versao versao) { try { IGoldenIndex goldenIndex = GoldenIndexClient.Instance(Settings.Default.MaquinaGoldenIndex, Settings.Default.PortaGoldenIndex, Settings.Default.UriGoldenIndex, Settings.Default.ProtocoloGoldenIndex); User usuarioGoldenIndex = GoldenIndexClient.Authenticate(Settings.Default.UsuarioGoldenIndex, Settings.Default.SenhaGoldenIndex, goldenIndex); string extensao = versao.Extensao.StartsWith(".") ? versao.Extensao : string.Concat(".", versao.Extensao); if (!goldenIndex.IsSupported(usuarioGoldenIndex, extensao)) { // Se não for um arquivo suportado, não faz nada return; } FileData arquivo = new FileData(); arquivo.Url = Settings.Default.CaminhoDoRepositorioProntuario + versao.NomeDoArquivo; arquivo.IndexerParameters = new IndexerParameters { Table = "prontuario", ContentField = "conteudo_Arquivo", IdField = "id", IdFieldValue = versao.Id.ToString() }; goldenIndex.SaveFile(usuarioGoldenIndex, arquivo); } catch (Exception exception) { string erro = exception.Message; } }
/// <summary> /// Método usado para extrair o conteúdo de um arquivo específico. /// </summary> /// <param name="arq">O arquivo a ser indexado.</param> public void Indexe(Arquivo arq) { try { IGoldenIndex goldenIndex = GoldenIndexClient.Instance(Settings.Default.MaquinaGoldenIndex, Settings.Default.PortaGoldenIndex, Settings.Default.UriGoldenIndex, Settings.Default.ProtocoloGoldenIndex); User usuarioGoldenIndex = GoldenIndexClient.Authenticate(Settings.Default.UsuarioGoldenIndex, Settings.Default.SenhaGoldenIndex, goldenIndex); //string extensao = versao.Extensao.StartsWith(".") ? versao.Extensao : string.Concat(".", versao.Extensao); //if (!goldenIndex.IsSupported(usuarioGoldenIndex, extensao)) //{ // // Se não for um arquivo suportado, não faz nada // return; //} string id = obterIdCadastrado(); //List<Arquivo> lista = new List<Arquivo>(); //lista = obterIdArquivos(id); //foreach (var arq in lista) //{ FileData arquivo = new FileData(); //arquivo.Id = count++; arquivo.Url = diretorio + arq.nome_Arquivo; //TESTE CollectionFieldUpdatingParameters parameters = new CollectionFieldUpdatingParameters(); parameters.CollectionName = "arquivos"; parameters.ContentField = "conteudo_Arquivo"; // é o mesmo que a coleção neste caso, porque o multivalorado não está agrupado num grupo parameters.Table = "documento"; //parameters.ParentField = "id"; //parameters.ParentFieldValue = id; // aqui supomos que haja um registro na base Pessoas cujo Id seja 12. é nesse registro que será adicionado uma nova linha na coleção "Documentos" parameters.IdField = "id_arquivo"; parameters.IdFieldValue = arq.id_Arquivo.ToString(); arquivo.IndexerParameters = parameters; //arquivo.Id = Convert.ToUInt32(arq.id_Arquivo); goldenIndex.SaveFile(usuarioGoldenIndex, arquivo); // } } catch (Exception exception) { string erro = exception.Message; } }