2011-02-25 11 views
9

मुझे अपने एमवीसी ऐप के लिए एक साधारण साइट खोज कार्यक्षमता की आवश्यकता है। कुछ पृष्ठ स्थैतिक और कुछ गतिशील हैं (जैसे समाचार लेख जो सीएमएस में दर्ज हैं)। मैं खोज को दोनों को संभालना चाहता हूं। क्या यह उत्पाद कोई अच्छा है? http://www.sitesearchasp.net कोई अन्य?एमवीसी साइट खोज कार्यक्षमता

उत्तर

4

@stephbu - उल्लेख के लिए धन्यवाद।

यदि आप arachnode.net का उपयोग करना चुनते हैं, तो आपके पास Lucene.NET या SQL पूर्ण-पाठ अनुक्रमणिका का विकल्प होता है।

लुसेन.NET के साथ कुछ 'हेड-स्क्रैचर्स' हैं, खासकर जब समवर्ती पढ़ने/लिखने/खोज परिदृश्य स्थापित करते हैं, लेकिन सामग्री के स्थिर प्रतिबिंब के रूप में यह बहुत अच्छी तरह से काम करता है।

यदि आप कुछ मुफ्त चाहते हैं, और टर्न-कुंजी, तो Solr (.Net) या Microsoft Search Server को आजमाएं।

http://www.microsoft.com/enterprisesearch/en/us/search-server-express.aspx (इस नि: शुल्क अंतिम बार मैं इसे देखा ...)

धन्यवाद! माइक

3

यदि आप कर सकते हैं तो कुछ भी खरीदने का प्रतिरोध करें - वहां कई मुफ्त .NET आधारित खोज इंजन हैं। पसंद का पसंदीदा Lucene.net, सभ्य यहाँ ट्यूटोरियल होगा:

Lucene Tutorial

यह काफी सेटअप करने के लिए आसान है, आप नियंत्रित कौन-सा डेटा Lucene एपीआई के माध्यम से अनुक्रमित किया गया है। यदि आपको क्रॉलिंग की आवश्यकता है तो वहां अरकोडोड जैसे ओपन-सोर्स स्पाइडरिंग एक्सटेंशन हैं। इंडेक्सिंग कैटलॉग इत्यादि के लिए यह शक्तिशाली शक्तिशाली है

मान लीजिए कि यह एक खोज इंजन के स्वामित्व की लागत के सापेक्ष आपके व्यापार के लिए खोज कितनी महत्वपूर्ण है। एक ख़रीदना आपको संभवतः टर्न-की कार्यक्षमता देगा, लेकिन यदि आप अधिक उन्नत सुविधाएं चाहते हैं तो एकीकरण की एक ही कीमत पर कोई संदेह नहीं होगा।

3

आप Solr का उपयोग करने पर भी विचार कर सकते हैं, जो ल्यूसीन के शीर्ष पर स्थित एक खोज इंजन वेब सेवा है, और हिट-हाइलाइटिंग और फीकेटेड खोज जैसी अतिरिक्त सुविधाएं प्रदान करता है। .NET एकीकरण SolrNet लाइब्रेरी के माध्यम से उपलब्ध है। सोलर और सोलरनेट दोनों स्वतंत्र हैं।

सोलरनेट का उपयोग करके आप आसानी से अपनी डेटाबेस सामग्री को अनुक्रमित कर सकते हैं। मैं डेटाबेस एक्सेस के लिए NHibernate का उपयोग करता हूं, और सोलरनेट में एनएचबेर्नेट एकीकरण भी है, इसलिए जब सामग्री बदलती है तो दस्तावेज़ स्वचालित रूप से फिर से अनुक्रमित हो जाते हैं। आप आसानी से अपनी डेटाबेस पहुंच विधि के लिए एक समान व्यवस्था स्थापित कर सकते हैं।

स्थिर पृष्ठों के लिए, आप या तो प्रोग्राम प्रोग्रामिक रूप से HTML सबमिट कर सकते हैं या वेब क्रॉलर का उपयोग कर सकते हैं (कुछ सुझावों के लिए this question देखें)। मुझे ऐसा करने की आवश्यकता नहीं है, इसलिए मैं किस उपकरण का उपयोग करने के लिए कोई सिफारिश नहीं कर सकता।

संबंधित मुद्दे