2011-02-25 13 views

Respuesta

4

@stephbu - Gracias por la mención.

Si elige utilizar arachnode.net, puede elegir entre la indexación de texto completo de Lucene.NET o SQL.

Hay algunos 'scratch head' con Lucene.NET, especialmente cuando se establecen escenarios concurrentes de lectura/escritura/búsqueda, pero como un reflejo estático del contenido funciona muy bien.

Si quiere algo gratis y llave en mano, pruebe Solr (.Net) o Microsoft Search Server.

http://www.microsoft.com/enterprisesearch/en/us/search-server-express.aspx (esta última era libre lo miraba ...)

Gracias! Mike

3

Resista la compra de cualquier cosa si puede: hay muchos motores de búsqueda gratuitos basados ​​en .NET. Favorita de elección sería Lucene.net, tutorial decente aquí:

Lucene Tutorial

Es bastante simple de configurar, controlar qué datos está indexada a través de la API de Lucene. Existen extensiones de spidering de código abierto como Arachnode si necesitas rastrear. Es poderosa para indexar catálogos, etc.

Supongo que depende de la importancia de la búsqueda para su empresa en relación con el costo de ser propietario de un motor de búsqueda. Comprar uno probablemente le dará la funcionalidad de llave en mano, pero sin duda se ejecutará con el mismo costo de integración si desea funciones más avanzadas.

3

También podría considerar usar Solr, que es un servicio web de motor de búsqueda que se encuentra en la parte superior de Lucene, y proporciona características adicionales como resaltado de visitas y búsqueda facetada. La integración de .NET está disponible a través de la biblioteca SolrNet. Tanto Solr como SolrNet son gratuitos.

Al usar SolrNet, puede fácilmente indexar el contenido de su base de datos. Utilizo NHibernate para el acceso a la base de datos, y SolrNet también tiene integración con NHibernate, por lo que los documentos se vuelven a indexar automáticamente cuando cambia el contenido. Puede configurar fácilmente un acuerdo similar para su método de acceso de base de datos de elección.

Para las páginas estáticas, puede enviar el HTML mediante programación o utilizar un rastreador web (consulte this question para obtener algunas sugerencias). No he necesitado hacer esto, así que no puedo hacer recomendaciones sobre qué herramienta usar.

Cuestiones relacionadas