Дата последней активности - лучшие идеи для реализации - PullRequest
6 голосов
/ 30 января 2012

Для типичной системы регистрации пользователей и членства я следую на веб-сайте ASP.NET, я хотел бы обновить дату и время последней активности. Какой из приведенных ниже методов будет идеальным для подражания.

1

Всякий раз, когда делается запрос к методу, который обращается к данным из таблицы учетных записей пользователей, автоматически (O_o) обновляет дату last_account_activity, используя GETDATE()

2

Вызовите UpdateLastActivity() как внешний метод после вызова метода из системы членства.

Информация:

С точки зрения надежности # 2 идеален, потому что я не могу полагаться на # 1, когда пользователь активно использует данные из других таблиц, а не из таблицы учетных записей пользователей.

Что вы думаете? У тебя есть другой способ сделать это?

Характеристики

.NET Framework 2.0

Asp.net 2.0

Реализация пользовательского членства

База данных Sql Server 2005

Ответы [ 4 ]

5 голосов
/ 30 января 2012

Подход 2 лучше, чем 1.

Предложение

Вы можете сделать это в Async манере.Вы просто запускаете метод UpdateLastActivity() и забываете о результате.Таким образом, производительность вашего приложения не пострадает.

Надеюсь, это работает для вас.

2 голосов
/ 30 января 2012

Не очень понятно, как устроена ваша система (потому что это на самом деле корневая точка), но, учитывая, что вы говорите, что решение #2 лучше (с точки зрения путей вызова), я бы выбрал более надежное решение, естественно, если это не вредит производительности и не создает разочарования для моего пользователя.

Если вы работаете над DataBase (это не очень понятно из вопроса), общий подход здесь заключается в использовании триггеровпривязаны к столу (ам).

1 голос
/ 30 января 2012

Мое личное мнение, что методы должны храниться отдельно.Это чисто потому, что имя метода должно отражать его назначение.Поэтому размещение функциональности «обновления» в методе, который не назван таковым, не является хорошей практикой.

0 голосов
/ 30 января 2012

На мой взгляд, это скорее вопрос дизайна.Я не очень разбираюсь в вашей архитектуре, поэтому код может измениться, но моя основная идея - определить каждое действие как класс, реализующий такой же интерфейс, как показано ниже:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...