【问题标题】:i am not able to create a collection in ravendb, if i do not have any document in it如果我没有任何文档,我无法在 ravendb 中创建集合
【发布时间】:2023-03-11 04:47:01
【问题描述】:

我在 ravendb 中创建了一个文档。使用 session.advanced.getmetadata(见代码),我在元数据中为 Raven-Entity-Name 命名,之后我在同一个函数中删除了该文档。然后我看到集合也被删除了。如果我手动删除文档raven studio 然后集合保留在数据库中。即使代码部分没有文档,集合如何持续存在?提前谢谢!!

我的 c# 代码是:

public CreateCollectionResult CreateCollection(string databaseName, string collectionName)
    {
        CreateCollectionResult createCollectionResult = new CreateCollectionResult();

        Collection collection1234 = new Collection();
        try
        {
            using (var session = documentStore.OpenSession(databaseName))
            {
                Guid guid = new Guid("12345678-1111-1111-2222-000000000000");
                session.Store(collection1234, guid, "april-Days/10");
                session.Advanced.GetMetadataFor<Collection>(collection1234)[Constants.RavenEntityName] = collectionName;
                //session.Delete<Collection>(collection1234);
                session.SaveChanges();
                createCollectionResult.IsOperationSuccessfull = true;
            }
        }
        //exception if database not found
        catch (InvalidOperationException ex)
        {
            createCollectionResult.IsOperationSuccessfull = false;
            createCollectionResult.Error = ex;
        }
        return createCollectionResult;
    }

【问题讨论】:

    标签: database c#-4.0 collections nosql ravendb


    【解决方案1】:

    在 RavenDB 中,集合是虚拟的,只要您在该文档中至少有一个文档,它们就会存在。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-04
      • 1970-01-01
      • 2015-07-20
      • 2014-10-13
      相关资源
      最近更新 更多