When developing a site search engine, you have a couple of options. This article will show you how to use either Google, Index Server, or a Custom Search engine. The number of uses for a search engine suite are not limited to asp. NET Web Site Search Engines.
Note:! There is no programming in this article This is an overview to show you how simple it is to create a search engine for a web site Alot of people are asking for articles on the code, and the Nata1 Unified team will work as. hard as possible to show everyone how the API works internally. However, the API was written very carefully so that a developer should be able to figure out how it works looking at our code comments and self describing naming conventions. code articles coming soon!
This first article will demonstrate using Nata1 Asp.net controls, but the next article will discuss adding searching capabilities to the TaskVision application, where we will build a site health monitor, check site ranking in goolge, and create tasks accordingly. Download source for this article Using Microsoft index server to develop a site search engine 4 years back was alot of fun. At the time, the flexibility to control noise words and what part of a web site gets indexed was interesting. Imagine you wanted to find "all good surfing places "in Costa Rica - but the site copy uses surf, not surfing, and words like all, and places are also not in the copy and not relevant You can use index server, but its much better to have your own control Imagine.. you needed to collect info on what people are searching for on your site, or you want to weight pages, exclude directories, etc. When I got my first experience with .Net during Beta II of Visual Studio, the possibilities jumped out at me and I began working on Nata1. Using Nata1, you can drag and drop UI search engine components like hit results, relevance, etc. and switch between google, Nata1, or Index Server without writing any custom code. This article will go over the Basics Needed to Build A Basic Search Page, Here Is An Example. HTTP:
//www.nata1.com/Photos/324.aspx For the developer that is more interested in customizing the controls and developing more advanced features, this is a good starting point. Also, computer science students studying Algorithms and data structures can get a good grasp on Binary Search Trees, and implment their own data structures. A series of articles written by Scott Mitchell are an excellent starting point for the computer science student to understand and analyze the differences between different data structures like skipped lists, and the properties of balanced trees. Nata1 was first implemented using BST's on a remote machine, and although you can use SQL server, you can also make a highbrid with little work to use SQL server and a BST. This article will show you how to get up and running WITH NATA1, But Future Articles by Myself and Others Will Demonstrate Developing Core Search Engine Components and Controls. Step 1: Add Some Configuration Code To The Web.config File. Config Wi Ll Be Taken From The Database, But if ITS NOT IN The Admin Tool It Will Look to the Web.config, And Then Use Defaults if Nothing is found. for your search engine, using the web.config is fine, but i ' ve found storing this info in the database is preferable, and there are many admin controls included that allow you to alter everything from normalization rules, to spidering settings SiteURLHERE if your indexing just one site /> "binpath" type = "nata1.nata1sectionhandler, nata1" /> sectionGroup> configSections> Step 2. next, run the DataBase Install Scripts for SQL Server. The Database ISN't Very Complex So You Can Easily Use MySQL. if you don't have a database, you can set Memory Binary Search Tree, But this ISN ' t recommended, you always want to remote your data structures. Step 3. Add Nata1.dll to your toolbox. Right click your toolbox. Choose "add / remove items", click browse, and find Nata1.dll. Nata1 controls are now added to your toolbox. there are dozens of controls, some are container controls, like ResultsRepeater, and other are for individual Items, all the ones with a smiley icon are placed in the Item or Alternating Item template, like HitUrl, HitWords, etc. You can get creative with your toolbox icons, I've included some neat ones like Homestar runner icons. Controls like QueryTime sit in the header template. some controls are specific to a search provider, eg Google has many controls, like spelling suggestions, but index server only has a couple so you have to be careful to make sure the provider supports the controls Step 4:. We'll need a form to get from a search box to the search results page Go ahead and drag and drop "SearchForm". (Control with the ducky) Onto Any A scx or aspx page in your site. To use an image, set the SearchButtonText to an image Url (I know, not the most elegant) or enter text and make sure to set the ButtonType as well as SearchPageUrl. As you can see, there Is A bug in the designer as the image isn't Updating. Step 5: WE ' . Ll build the search results page Drag and drop "Search Results Repeater" (the one with the fairy icon) onto a ascx or aspx page The two most import properties will be "Query Provider" - here you want to select Google, Nata1, . Index Server, Rss, or ASP.Net Forums The last two are still in development, anyone want to develop them, be my guest The other property is called SearchQueryTemplate mode, here you want to select simple or advanced Step 6:.. Right click the template, choose the template you want to edit, and start dragging and dropping controls. Here I dragged the controls SearchQuery and TotalHits onto the Header template, and put an ad banner there too, you can rotate based on keyword if you want. There Are Several Other Templates You'll Need To Set, Like Noresults, etc. There