dtSearch Remove Url Or Document From Index Using IndexJob
By Robbe Morris
It only takes a few lines of code to remove a url or document from a dtsearch index.
The documentation for dtSearch gives a very vague set of instructions for deleting
urls and files from an index. I really like dtsearch and we use it extensively
here at EggHeadCafe. However, their documentation is often vague and some aspects
of the API are not particularly clear.
Here's how you perform this simple task. Create a text file that contains one url
per line. Then set the ToRemoveListName property with the full path and filename. The
ActionRemoveListed = true tell the generic Execute method to remove these urls
from the index. The IndexJob will not throw an error if the url doesn't exist
in the index. So, if you have multiple indexes that you want to make absolutely
sure the offending url no longer exists, you are free to process the same url
list against many different dtsearch indexes.
using dtSearch.Engine;
using (var job = new IndexJob())
{
job.IndexPath = indexPath;
job.ActionRemoveListed = true;
job.ToRemoveListName = @"C:\MyUrlsToRemoveFromDtSearch.txt";
var success = job.Execute();
}
I would have preferred the API to have a method to remove documents. The property
ToRemoveListName is not an obvious property for a filename. Using a couple of
properties to drive the internal logic of a generic method named .Execute is
not clear to anyone. Just my 3 cents...
dtSearch Remove Url Or Document From Index Using IndexJob (1254 Views)