You can use GroupDocs.Search without a license. The usage and functionality are the same as in the licensed version, but the evaluation version has a few limitations.
Evaluation Version Limitations
You can easily download GroupDocs.Search for evaluation. The evaluation download is the same as the purchased download. The evaluation version simply becomes licensed when you add a few lines of code to apply the license. You will face the following limitations while using the API without a license.
Indexing Limitations
Following are the indexing limitations of the evaluation version of the GroupDocs.Search API:
The total number of indexed documents in one index or in all indexes of an index repository cannot exceed 100.
If adding documents would exceed this number, only the documents that fit into the limit are indexed.
All changed documents can be updated in an index during Update.
New documents can be added to an index during update only while the total number of indexed documents is less than 100.
Indexes can be merged only if the total number of documents in the current index and in the merged indexes does not exceed 100. Otherwise, the Merge method throws LicenseRestrictionException.
Searching Limitations
Only the first 10 found documents can be retrieved from a search result. The DocumentCount property returns the total number of found documents, but the GetFoundDocument method throws LicenseRestrictionException for a document number of 10 or greater. Therefore, in the evaluation mode, a loop over found documents must not exceed 10 iterations:
C#
stringindexFolder=@"c:\MyIndex\";stringquery="Einstein";Indexindex=newIndex(indexFolder);SearchResultresult=index.Search(query);intcount=Math.Min(result.DocumentCount,10);// Only the first 10 found documents are available in the evaluation modefor(inti=0;i<count;i++){FoundDocumentdocument=result.GetFoundDocument(i);Console.WriteLine(document.DocumentInfo.FilePath);}
Search Network Limitations
A search network can contain only 1 shard and 1 extractor. If the configuration of the network contains more shards or extractors, the methods of the indexer and searcher nodes throw InvalidOperationException.
Licensing
The license file contains details such as the product name, number of developers it is licensed to, subscription expiry date and so on. It contains the digital signature, so don’t modify the file. Even inadvertent addition of an extra line break into the file will invalidate it. You need to set a license before utilizing GroupDocs.Search API if you want to avoid its evaluation limitations.
The license can be loaded from a file or stream object. A relative path to the license file is resolved against the current working directory of the process, which may differ from the folder of the application or of the GroupDocs.Search.dll file (for example, in a service or a web application). Therefore, it is recommended to specify the absolute path to the license file.
Applying License from File
The code below will explain how to apply product license.
C#
// For complete examples and data files, please go to https://github.com/groupdocs-search/GroupDocs.Search-for-.NET// Initializing the licenseLicenselic=newLicense();// Setting the license from the specified filelic.SetLicense(@"c:\Licenses\GroupDocs.Search.lic");
Applying License from Stream
The following example shows how to load a license from a stream.
C#
// For complete examples and data files, please go to https://github.com/groupdocs-search/GroupDocs.Search-for-.NETusing(FileStreamfileStream=newFileStream(@"c:\Licenses\GroupDocs.Search.lic",FileMode.Open,FileAccess.Read)){Licenselic=newLicense();lic.SetLicense(fileStream);}
Note
Calling License.SetLicense multiple times is not harmful but simply wastes processor time. If you are developing a Windows Forms or console application, call License.SetLicense in your startup code, before using GroupDocs.Search classes. When developing an ASP.NET application, you can call License.SetLicense from the Global.asax.cs (Global.asax.vb) file in the Application_Start protected method. It is called once when the application starts. Do not call License.SetLicense from within Page_Load methods since it means the license will be loaded every time a web page is loaded.
Applying Metered License
Note
You can also set Metered license as an alternative to license file. It is a new licensing mechanism that will be used along with existing licensing method. It is useful for the customers who want to be billed based on the usage of the API features. For more details, please refer to Metered Licensing FAQ section.
Here are the simple steps to use the Metered class.
Create an instance of Metered class.
Pass public and private keys to the SetMeteredKey method.
Do processing (perform task).
Call the static method GetConsumptionQuantity of the Metered class.
It will return the consumption quantity (the amount of processed data in MBs) consumed so far.
Call the static method GetConsumptionCredit of the Metered class (since version 19.5).
It will return the credit that you have consumed so far.
Following is the sample code demonstrating how to use Metered class.
C#
// For complete examples and data files, please go to https://github.com/groupdocs-search/GroupDocs.Search-for-.NETstringpublicKey="your-public-key";// Your public license keystringprivateKey="your-private-key";// Your private license keystringindexFolder=@"c:\MyIndex\";stringdocumentsFolder=@"c:\MyDocuments\";Meteredmetered=newMetered();metered.SetMeteredKey(publicKey,privateKey);// Do indexing and searching in licensed modeIndexindex=newIndex(indexFolder);// Adding documents to indexindex.Add(documentsFolder);// SearchingSearchResultresult=index.Search("arbitrary");// Get consumption quantitydecimalconsumptionQuantity=GroupDocs.Search.Metered.GetConsumptionQuantity();// Get consumption creditdecimalconsumptionCredit=GroupDocs.Search.Metered.GetConsumptionCredit();
Was this page helpful?
Any additional feedback you'd like to share with us?
Please tell us how we can improve this page.
Thank you for your feedback!
We value your opinion. Your feedback will help us improve our documentation.
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.