Tider i BSON er repræsenteret som UTC millisekunder siden Unix-epoken (spec ). Tidsværdier i Go har nanosekunders præcision.
Til rundturstid. Tidsværdier gennem BSON-rangering, brug tider afkortet til millisekunder siden Unix-epoken:
func truncate(t time.Time) time.Time {
return time.Unix(0, t.UnixNano()/1e6*1e6)
}
...
u := user{
Username: "test_bson_username",
Password: "1234",
UserAccessibility: "normal",
RegisterationTime: truncate(time.Now()),
}
Du kan også bruge Time.Truncate metode:
u := user{
Username: "test_bson_username",
Password: "1234",
UserAccessibility: "normal",
RegisterationTime: time.Now().Truncate(time.Millisecond),
}
Denne tilgang er afhængig af det faktum, at Unix-epoken og Go nul-tid adskiller sig med et helt antal millisekunder.