DOBフィールドがユーザーの年齢を表示するために使用される場合、他のユーザーからDOBフィールドを非公開にする方法はありますか? たとえば、stackoverflowの誕生日フィールドは他のユーザーから非公開にされていますか?表示フィールドの年齢はいつ変更されますか?それは毎月初めに、またはランダムに誕生日の範囲内でランダムに変更されますか?あるいは、毎年の初めにちょうどいいでしょうか?ユーザの年齢を年数で表示すると、どのようにDOBフィールドを非公開にすることができますか?
2
A
答えて
1
私は結論的に話すことができませんが、私の誕生日に私のSOプロフィールの年齢が予想通りに転がっていたことが分かりました。私は誰かが毎日のSOプロフィールをスキャンして年齢を記録し、誰かの誕生日を変更したときにそれを特定できると思うが、がひどくであることを知りたいと思ったら、本当にあなたのプライバシーを心配しているなら、あなたの本当の誕生日を置いてはいけません。
また、意図的にまたは意図せずに、データダンプで提供されたユーザーの年齢が常に正確であるとは限りません。私はそれが今年だと思う - (出生年)、ダンプ(私の場合は22)の年齢は、ユーザーの実際の年齢(私は実際に21歳)よりも1倍です。
0
確かに、値はプロファイルページにアクセスするたびに計算されます。すべての年齢を常に計算して保存することは、あまりにも集中的です。
もちろん、プロファイルタイプのクラスをお持ちの場合は、単に読み取り専用のプロパティにするだけです。
のような何か:
のpublic static int型CalculateAge(日時たbirthDate) {
DateTime today = DateTime.Today;
int personAge = (today.Year - userBirthDate.Year);
// deduct a year if the birthday hasn't passed yet.
if ((today.Month < birthDate.Month) || (today.Month == userBirthDate.Month && today.Day < userBirthDate.Day))
--personAge;
return personAge;
}
編集: も有名Question 9
ない本当の問題に尋ねた... –
は、関連するプログラミングではありません...しかし面白いことにそれを聞かなければならない、私は同じことを疑問に思っている。 1年に1度、それをスキャンし、ユーザーの宣言された誕生日を把握することができます。それらのうちのいくつかは真実になります。 – cletus
これが "for example"が追加された理由です。デザインの質問の詳細 –