Для двустороннего шифрования проверьте mcrypt или, если вы предпочитаете чистую реализацию , phpseclib .
Это будет сложно. Во-первых, вам понадобится ViewState, поэтому вам нужно будет разместить отчет на обычной странице WebForms. Это не так уж и плохо - WebForms и MVC прекрасно работают бок о бок.
Самая сложная часть - это привязка к реальным объектам IEnumerable, а не к этим фальшивым ObjectDataSources.
Первым шагом является создание модели данных отчета. Вы можете сделать это в коде, с запросами, как хотите. Типичная структура, подобная этой (но, очевидно, намного больше):
public class ReportSource
{
public Floogle[] Floogles { get; set; }
}
public class Floogle
{
public Doodad[] Doodads { get; set; }
public string Text { get; set; }
}
public class Doodad
{
public int Number { get; set; }
}
Уловка состоит в том, чтобы использовать элемент управления BindingSource в вашем отчете и установить для свойства DataSource значение typeof (ReportSource)
- да, источник данных - это тип модели вашего отчета.
При разработке отчета вы не получите много богатства, но вы сможете это сделать.
Альтернативный способ сделать это - создать отчет на сервере отчетов, а затем передать его в приложение mvc в формате PDF.
I ' У меня есть небольшой проект, который я реализовал на codeplex, это проект mvc с отчетом.
http://mvctaskmanagement.codeplex.com/
В основном, поскольку я занимаюсь разработкой на компьютере XP, моя веб-форма должна была попадают в отдельный проект. Поскольку у меня есть проект уровня обслуживания, я вставил его туда.
Оттуда я вызываю свой отчет через сообщение ajax, передавая параметры на страницу отчета, которая затем передает его на тот же уровень обслуживания, который использовался для генерации превью.
Удачи!
I got an idea that is not tested but may work. 1- Place report viewer control in a standard ASP.Net web form page (e.g. ReportViewer.aspx) 2- Under your MVC, add an iframe that references to this ReportViewer.aspx page 3- Pass parameters to the page using sessions or query strings
Let me know if th is works