Получите общее количество строк от Silverlight RIA DomainService, а не любые другие данные
Я хотел бы делать непрерывные вызовы базы данных, чтобы получить текущий счетчик строк таблицы каждые 5 минут. Ожидается, что пользователи, использующие мое приложение, будут огромными, и они будут делать вызовы в БД, и мне нужно подсчитать количество строк, чтобы иметь возможность делать некоторые пользовательские вещи.
public IQueryable<CPOQC_Errorlog> GetCPOQC_Errorlog()
{
return this.ObjectContext.CPOQC_Errorlog;
}
Я не хочу загружать все данные с сервера, так как это окажет давление на сервер и может привести к снижению производительности. Может ли быть что-то вроде:
public int GetCPOQC_Errorlog()
{
return this.ObjectContext.CPOQC_Errorlog.Count();
}
2 ответа
Я написал функцию ниже в моем классе службы домена
public int GetCPOQC_ErrorlogCount()
{
return this.ObjectContext.CPOQC_Errorlog.Count();
}
который я вызываю из своего проекта Silverlight, чтобы получить текущее количество строк
dataContext.Load(GetCPOQC_ErrorlogCount()).Completed += new EventHandler(errorLogCount_Completed);
void errorLogCount_Completed(object sender, EventArgs e)
{
int errorLogRowCount = ((InvokeOperation<int>)sender).Value;
}
Вы можете написать хранимую процедуру, которая возвращает только количество строк в таблице, и вызвать эту хранимую процедуру из службы.