zoukankan      html  css  js  c++  java
  • 【转帖】Solr.Net的使用

    https://github.com/mausch/SolrNet/blob/master/Documentation/Basic-usage.md

    Basic usage

    First, we have to map the Solr document to a class. Let's use a subset of the default schema that comes with the Solr distribution:

    public class Product {
        [SolrUniqueKey("id")]
        public string Id { get; set; }
    
        [SolrField("manu_exact")]
        public string Manufacturer { get; set; }
    
        [SolrField("cat")]
        public ICollection<string> Categories { get; set; }
    
        [SolrField("price")]
        public decimal Price { get; set; }
    
        [SolrField("inStock")]
        public bool InStock { get; set; }
    }
    

    It's just a POCO with some attributes: SolrField maps the attribute to a Solr field and SolrUniqueKey (optional but recommended) maps an attribute to a Solr unique key field.

    Now we'll write some tests using this mapped class. Let's initialize the library:

    [TestFixtureSetUp]
    public void FixtureSetup() {
        Startup.Init<Product>("http://localhost:8983/solr");
    }
    

    Let's add a document (make sure you have a running Solr instance before running this test):

    [Test]
    public void Add() {
        var p = new Product {
            Id = "SP2514N",
            Manufacturer = "Samsung Electronics Co. Ltd.",
            Categories = new[] {
                "electronics",
                "hard drive",
            },
            Price = 92,
            InStock = true,
        };
    
        var solr = ServiceLocator.Current.GetInstance<ISolrOperations<Product>>();
        solr.Add(p);
        solr.Commit();
    }
    

    Let's see if the document is where we left it:

    [Test]
    public void Query() {
        var solr = ServiceLocator.Current.GetInstance<ISolrOperations<Product>>();
        var results = solr.Query(new SolrQueryByField("id", "SP2514N"));
        Assert.AreEqual(1, results.Count);
        Console.WriteLine(results[0].Price);
    }
    
  • 相关阅读:
    IoC~MVC3+EF+Autofac实现松耦合的系统架构
    IoC~高效的Autofac
    Autofac 依赖注入框架 使用
    C# socket编程实践——支持广播的简单socket服务器
    简单理解Socket
    利用html 5 websocket做个山寨版web聊天室(手写C#服务器)
    c# 实现WebSocket
    oracle中clob字段的使用
    查找程序加载的动态库的路径
    wordpress在window下完美实现301重定向的方法
  • 原文地址:https://www.cnblogs.com/yanyuge/p/3369602.html
Copyright © 2011-2022 走看看