我正在使用 RavenDB(NoSQL 数据库),并且我有这个类:
public class VirtualDirectory
{
public string Id { get; set; }
public string HostAlias { get; set; }
public string VirtualPath { get; set; }
public string IdentificationMethod { get; set; }
public int IsCancelled { get; set; }
}
我正在通过以下方式启动此类的新实例:
VirtualDirectory vd = new VirtualDirectory() { HostAlias = "bla", IsCancelled = 0 };
并通过以下方式保存文档:
using (var session = DbConnection.Instance.DocumentStore.OpenSession(DbName))
{
session.Store(vd);
session.SaveChanges();
}
根据我对 NoSQL DB 文档的了解,这些文档不受模式约束,因此它们的结构很灵活。
我的问题是:如何将数据保存到我的 RavenDB 数据库,而不会在我未设置的字段中获得空值?在最后一段代码之后,我的数据库看起来像:
{
HostAlias : "bla",
VirtualPath : null,
IdentificationMethod : null,
IsCancelled : 0
}
当我得到一个缺少某些字段的 C# 对象(VirtualDirectory 类型)时,例如:
{
HostAlias : "bla",
IsCancelled : 0
}
会是空值吗?