Мы создаем набор функций для нашего приложения. Одним из них является список недавних действий пользователя ala on SO. У меня возникла небольшая проблема с поиском наилучшего способа разработки таблицы для этих действий.Список мероприятий ala SO
В настоящее время у нас есть таблица упражнения со следующими столбцами
UserId (Id of the user the activity is for) Type (Type of activity - i.e. PostedInForum, RepliedInForum, WroteOnWall - it's a tinyint with values taken from an enumerator in C#) TargetObjectId (An id of the target of the activity. For PostedInForum this will be the Post ID, for WroteOnWall this will be the ID of the User whose wall was written on) CreatedAtUtc (Creationdate)
Моя проблема заключается в том, что колонка TargetObjectId не чувствует себя хорошо. Это мягкая ссылка - никаких внешних ключей, и только знание о типе говорит вам, что этот столбец действительно содержит.
Есть ли у вас какие-либо предложения по альтернативному/лучшему способу хранения списка пользовательских действий?
Следует также упомянуть, что сайт будет многоязычным, поэтому вы должны иметь возможность просматривать список действий на разных языках - вот почему мы не выбрали, например, просто поместить текст мероприятия/html в Таблица.
Благодаря
Я подумал об этом, но меня мало волнует масштабируемость. Сейчас у нас есть около 6-7 различных видов деятельности, поэтому нам нужно будет использовать данные из 6-7 таблиц, но в будущем это может увеличиться до 20 или 30 различных видов деятельности. – Micael