Сохранить данные в MVC - PullRequest
       1

Сохранить данные в MVC

2 голосов
/ 10 ноября 2009

Это решение уклонялось от меня весь день. Я получаю данные из своей базы данных, но я хотел бы сохранить данные где-нибудь, а не заходить в базу данных для каждой страницы. Как мне это сделать?

Я получаю данные с моего контроллера ...

public ActionResult Inquiry(string Num, DateTime Date)
{  ...
   Bill myBill = new Bill(Num, Date, myConnections);      
   //This is where I am trying to store my data...      
   return View("Inquiry", myBill);
}

Тогда на моей странице запроса ...

public ActionResult Summary(string Num, DateTime Date)
{  ...
   Bill myBill = new Bill(Num, Date, myConnections);      
   //... Data get retrieved here :(      
   return View("Summary", myBill);
}

Достаточно данных, чтобы отвлечься от сохранения в сеансе. Можно ли сохранить в Model forlder и просто использовать наследование на странице aspx?

Я молодой парень в мире программирования, хуже .NET MVC

Я должен быть в состоянии выяснить, куда идти оттуда. Есть идеи?

Ответы [ 2 ]

2 голосов
/ 10 ноября 2009

Если я правильно понял ваш вопрос:

Вы можете кэшировать предмет. Присвойте уникальный ключ объекту кэша (Cache ["uniquekey"]), затем передайте этот уникальный ключ другому действию.

Пусть ваше действие найдет этот объект из кэша и отправит его в качестве модели.

Вот статья о кешировании от 4 парней из Rolla, а - официальное обучающее видео ASP.NET о кэшировании.

Примечание. Обязательно укажите срок действия кэшированного объекта.

0 голосов
/ 11 ноября 2009

Если это два действия на одном контроллере, и вы по сути отправляете модель обратно в контроллер при отправке (что является лишь предположением того, что вы можете делать), тогда вы можете использовать коллекцию значений формы и updateModel метод или даже использовать строго типизированное действие, подобное этому (ish):

public ActionResult Inquiry(string Num, DateTime Date)
{  ...
   Bill myBill = new Bill(Num, Date, myConnections);      
   //This is where I am trying to store my data...      
   return View("Inquiry", myBill);
}

public ActionResult Summary(Bill bill)
{     
   //... do stuff
   return View("Summary", bill);
}

Таким образом, вы получаете эту информацию из естественного источника; входящий счет. Вы можете обработать это, сохранить его, изменить его, добавить в другую модель, но затем вывести его обратно в представление без необходимости перезагрузки.

Я тоже новичок в aspnet mvc, и в большинстве случаев я борюсь с входами и выходами данных, есть кое-что, чего мне не хватает в архитектуре.

Глава Скотта Гу очень полезна в выяснении некоторых из них.

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