Я занимаюсь разработкой приложения электронной коммерции ASP.Net.
Я использую ASP.Net Web Forms.
Когда я заканчиваю полное приложение, я подумал о кэшировании некоторых данных, чтобы производительность приложения увеличилась. (плохая идея ... я должен был рассмотреть это с самого начала)
Я не использую встроенные элементы управления такими сетками данных.
Я использую MS-Sql.
Я использую базу данных MySql server us и пользовательские элементы управления UserControls, которые я разрабатываю.
(Пользовательский код ADO.Net)
Для получения данных из базы данных я использую:
Объект, представляющий поля таблицы IE:
Если моя таблица (MyTable) имеет:
ID , Title, Date
Я создам, создаст объект, подобный приведенному выше:
public class MyTable{
public int ID {get;set;}
public string Title {get;set;}
public Datetime Date {get;set;}
}
Для управления полями из таблицы я использую что-то вроде выше:
public class MyTableDatabaseManager{
//Insert a row
public bool insertMyTable(MyTable item){
//...Open a mysql connection , do job , close it.
}
//Update a row
public bool updateMyTable(MyTable item){
//...Open a mysql connection , do job , close it.
}
//Delete a row
public bool deleteMyTable(MyTable item){
//...Open a mysql connection , do job , close it.
}
//Get one row
public MyTable deleteMyTable(int id){
//...Open a mysql connection , do job , close it.
}
//Get some rows or all of them
public List<MyTable> deleteMyTable(int limit,int page,bool Ordering){
//...Open a mysql connection , do job , close it.
}
}
Мои вопросы:
Как я могу хранить некоторые данные в кеше, чтобы мне не приходилось постоянно общаться с базой данных?
Как программно сбросить кэш при изменении данных?
(я знаю, как, но куда я положил код: P он может быть в файлах с выделенным кодом, когда я делаю изменения или вставляю некоторые значения, или где-то еще?)
Кэш вывода у меня не работает, потому что большая часть предоставленных данных зависит от пользователя.
(около 80% из них)
Большое спасибо:)