我使用文档构建了一个数据库(使用C#
驱动程序):
{
_id: ObjectID('xxxxxxx'),
var: 10,
data: {
_id: ObjectID('yyyyyyy'),
data_var1: 11,
data_var2: 12
}
}
我尝试使用Mongoose
进行设计:
var MyDataType = new Schema({
_id: ObjectID,
data_var1: Number,
data_var2: Number
});
var schema = new Schema({
_id: ObjectID,
var: Number,
data: MyDataType
});
但是,我有这个错误:
TypeError:
处的未定义类型MyDataType
您是否尝试过嵌套架构?您只能使用refs或数组进行嵌套。
从错误消息中,似乎不可能像我一样使用模式,我必须使用引用(然后使用mongoose的populate函数)或数组。由于我的数据库,我无法使用数组。我不能使用引用,因为MyDataType
没有自己的集合,但它是一个嵌入式文档。
有没有办法在我的数据库中使用它?
注意:使用我的C#
驱动程序,schema
和MyDataType
是类
答案 0 :(得分:1)
您必须在一个Mongoose模式中定义它:
var schema = new Schema({
_id: ObjectID,
var: Number,
data: {
_id: ObjectID,
data_var1: Number,
data_var2: Number
}
});