добавление нового документа в CouchDb с использованием ArmChair выдает исключение Ссылка на объект не установлена ​​на экземпляр объекта - PullRequest
0 голосов
/ 05 ноября 2018

Я использую couch-db версии 2.2.0

и я хочу выполнить операции crud в базе данных couchdb, используя. Net

поэтому я установил Armchair.Core Nuget Package версия 0.11.2

и для добавления нового документа I следовал коду, упомянутому в еще не закончена вики https://bitbucket.org/dboneslabs/arm-chair/wiki/main-api/session-api.md

Database mydatabase = new Database("TestDb",newConnection("http://localhost:5984"));
            using (var session = mydatabase.CreateSession())
            {
                var author = new Person("Jone");
                session.Add(author);// NOTE: If no Id has been assigned before the instance is added to the Session, then ArmChair will assign it. After the object is committed to the database, the revision will then be set onto the instance

                session.Commit();  
            }

но я все еще получаю ошибку

Object reference not set to an instance of an object.

также mydatabase переменная, упомянутая в предыдущем коде, имеет значения null для Connection и DataBase параметров, даже если я передал их в конструктор, поскольку он вообще не подключается к базе данных couchdb и никогда не пытается создать базу данных TestDb

любая помощь, пожалуйста, есть ли неправильные звонки в моем коде

1 Ответ

0 голосов
/ 28 апреля 2019

ArmChair подключается к существующей базе данных и не создает ее.

Если вы хотите создать базу данных, взгляните на пример приложения , в регистрации Autofac есть метод, который обеспечивает создание базы данных.

https://bitbucket.org/dboneslabs/arm-chair/src/bd4e70d6c51d8b45cfb89eb65ecf81a4ecefb691/samples/todo/Todo.Service/Infrastructure/Modules/DataAccessModule.cs#lines-62

это не самый красивый код, но работает.

...