Я обновляю веб-приложение MVC5 для текстовых сообщений членов клуба. У меня есть вид из PartialView (TextReport.cshtml). Технически я хочу преобразовать этот PartialViewResult в строку. Есть много похожих решений, которые я нашел на SO, но большинство из них просто отражают мнение. Единственный, который отображает PartialView с параметрами, применимыми к моей ситуации, это здесь , но не работает для меня. Функция обмена текстовыми сообщениями, если она снабжена текстовым телом, работает и представление TextReport.cshtml визуализируется при доступе по URL-адресу и параметрам. Но этот код ниже всегда выдает ошибку нулевого исключения.
public PartialViewResult TextReporter(int year, int no, Guid memcode)
{
var query = TextReportYrMn(year, no, memcode);
return PartialView(query);
}
public ActionResult textbot(int year, int no, Guid memcode)
{
var clients = from ct in db.Members.Where(x => x.Mobile != null && u.MemberCode == memcode && u.Email == null && u.Age > 17).ToList() select ct;
foreach (var cl in clients)
{
try
{
using (var sw = new StringWriter())
{
PartialViewResult result = TextReport(year,no, gcode);
result.View = ViewEngines.Engines.FindPartialView(ControllerContext, "TextReport").View;
ViewContext vc = new ViewContext(ControllerContext, result.View, result.ViewData, result.TempData, sw);
result.View.Render(vc, sw);
var body = sw.GetStringBuilder().ToString();
SMS.SendSMS(cl.Phone1.Trim(), "Hi " + body + " Thanks");
}
}
catch (Exception ex)
{
throw ex;
}
return RedirectToAction("Index");
}
Я, кажется, потерялся, любая помощь будет оценена.