0

我正在尝试创建一个简单的索引,其中包括我文档中的两个字段:TraceRowID、LoadDate。

所以我创建了以下类:

using Model;
using Raven.Abstractions.Indexing;
using Raven.Client.Indexes;
using Raven.Client.Linq;
using Raven.Client.Document;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Indexes
{
    public class IDLoadDateIndex : AbstractIndexCreationTask<ServiceTrace>
    {
        public IDLoadDateIndex()
        {
            Map = serviceTrace => from st in serviceTrace
                                  select new { ID = st.TraceRowID, LoadDate = st.LoadDate };
        }
    }
}

我的模型是“ServiceTrace”:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Model
{
    public class ServiceTrace
    {
        public int TraceRowID { get; set; }
        public string StatusDescription { get; set; }
        public string FullExceptionText { get; set; }
        public string LoadDate { get; set; }
    }
}

还有我的 DAL:

using Indexes;
using Raven.Client.Indexes;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DAL
{
    public class DbConnection
    {
        private readonly static DbConnection instance = new DbConnection();
        private Raven.Client.Document.DocumentStore documentStore;

        static DbConnection()
        {
        }

        private DbConnection()
        {
            this.documentStore = new Raven.Client.Document.DocumentStore { Url = "http://btadmins:8080/" };            
            this.documentStore.Initialize();
            IndexCreation.CreateIndexes(typeof(IDLoadDateIndex).Assembly, this.documentStore);
        }

        public static DbConnection Instance
        {
            get
            {
                return instance;
            }
        }

        public Raven.Client.Document.DocumentStore DocumentStore
        {
            get
            {
                return documentStore;
            }
        }
    }
}

出于某种原因,在“CreateIndexes”行上的调试模式下单步执行时,它已成功完成。但我看不到 RavenDB 管理工作室 silverlight 应用程序上添加的任何索引。可能是什么问题?

4

1 回答 1

0

也许您正在查看工作室中的命名数据库?通过在此处未命名特定数据库,您将在 Raven 的系统数据库中创建索引。

于 2013-05-02T15:12:36.857 回答