Только что справился с 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();