我最近不得不將使用ASP.NET Core 1.0完成大量工作的項目轉換爲Node.js.我絕對超出了我的舒適範圍,對JavaScript幾乎一無所知,並且擁有ASP的良好生活,使我無需親自執行JSON就可以序列化C#類。 Node希望我自己做JSON,這是我的一段糟糕的時光。JSON(node/express)和JSON數組中的自定義「類型」
這是一個健身應用程序。你的客戶有一些進步,包含他們的升降機和東西。在C#,也就是在一個鍛鍊對象,如下所示:
public struct Progress
{
public Workout[] Workouts;
}
鍛鍊是含有之類的東西定時,集合,重複,所有的好東西可重複使用的對象。我可以在需要它的每個模式中重新編寫Workouts對象,但是必須有更好的方法嗎?我閱讀了有關$schema
和$ref
的一些信息,但我不熟悉如何使用它們,或者如果這是這些關鍵字的正確應用。
最後,我將如何定義此自定義鍛鍊對象的數組?
這是我的JSON對象和client.js
到目前爲止的內容。進度位是我理想想達到的目標。
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var ClientSchema = new Schema({
measurements: [{
height: Number,
weight: Number
}],
personal_information: [{
birthday: Date,
gender: String
}],
contact_information: [{
phone: String,
email: String
}],
progress: [{
workouts: WorkoutList
}]
});
你是問,如果一個模式可以使用另一個架構的嵌入式文件? –
@JasonCust也許?我在一些不同的模式中使用Workouts模式,所以我想避免一次又一次地在不同的模式中編寫它,只是像「進步:鍛鍊」那樣調用。有任何想法嗎? – KingDan
這取決於您是否期望將相同的數據包含在不同的模式中,或者您是否只需要相同的結構。例如,如果給定一個由ClientSchema創建的包含'client.progress []。workouts'子文檔的文檔,這個子文檔所代表的數據是否只需要從這個特定的客戶文檔中訪問,或者是否需要成爲另一份文件(客戶或其他)的子文件? –