刚开始掌握RavenDB --这很棒--但是我有点纠结于一个查询。我运行foreach并使用Store()方法保存一些数据,完成后使用SaveChanges()方法。
一旦我存储了这个信息,我就需要引用这个信息来存储一些额外的信息(如果您在这一点上有一点困惑,不用担心,代码会清楚地说明这一点!)但是,当我引用这些信息时,却找不到任何信息。
因此,首先我添加一些数据:
foreach (var development in developments)
{
Console.WriteLine(" - Working on Developmnent ID: " + development.devID);
Session.Store(new Domain.Development
{
Id = "D" + Convert.ToString(development.devID),
Name = development.devName,
Street = development.devStreet,
Town = development.devTown,
County = development.devCounty,
Postcode = development.devPostcode,
Country = development.devCounty,
Description = "",
Longitude = GeoData.Longitude(development.devPostcode),
Latitude = GeoData.Latitude(development.devPostcode)
});
}现在,由于会话中可以运行的查询数量的限制,我检索整个数据集并将其存储在内存中:
var developmentList = from d in Session.Query<Domain.Development>()
select d;现在,当我在这个结尾处添加一个断点时,找不到任何数据。我是否需要创建另一个会话来检索此数据?
我也试过
var developmentList = Session.Query<Domain.Development>();下面是我创建会话的代码:
internal static DocumentStore Store;
internal static IDocumentSession Session { get; set; }
internal <<Constructor>> ...
Store = new DocumentStore { ConnectionStringName = "RavenDB" };
Store.Initialize();
IndexCreation.CreateIndexes(Assembly.GetCallingAssembly(), Store);
Session = Store.OpenSession();发布于 2012-03-15 05:49:22
不建议您这样做。默认情况下回到RavenDB的安全概念。
https://stackoverflow.com/questions/9704059
复制相似问题