Передавать данные модели между страницами RazorC#

Место общения программистов C#
Ответить
Anonymous
 Передавать данные модели между страницами Razor

Сообщение Anonymous »

Я пытаюсь передать данные модели между двумя страницами Razor, данные не являются строковыми, логическими или целыми.
данные, которые я хочу передать на вторую страницу, являются моделью,
я делаю это таким способом, р>

Код: Выделить всё

public class AskLibrarian
{
public int Id { get; set; }
public string FullName { get; set; }
public string Subject { get; set; }
public string Email { get; set; }
public string Text { get; set; }
public string UserIp { get; set; }
public DateTime CreateDate { get; set; }
public bool ReadIt { get; set; }
public bool Answer { get; set; }
public string reciptCode { get; set; }
}
А в методе Get передайте данные следующим образом:

Код: Выделить всё

 [BindProperty]
public AskLibrarian AskLibrarian { get; set; }

public async Task OnPostQuestionAsync()
{
if (!ModelState.IsValid)
{
return Page();
}
AskLibrarian.Answer = false;
AskLibrarian.CreateDate = DateTime.Now;
AskLibrarian.ReadIt = false;
string userIp = $"{ HttpContext.Connection.RemoteIpAddress}";
if (string.IsNullOrEmpty(userIp))
{
userIp = "127.0.0.1";
}

AskLibrarian.UserIp = userIp;
string rndNuber = Business.RandomNumberForQuestion.randCode;
AskLibrarian.reciptCode = rndNuber;

await _emailSenderService.SendEmailAsync(AskLibrarian.Email, AskLibrarian.FullName, rndNuber);
_context.AskLibrarians.Add(AskLibrarian);
await _context.SaveChangesAsync();
Message = "your message sended";

//return RedirectToPage("/Subfolder/Index", new { SFId = 7 });
return RedirectToPage("/Subfolder/AskLibrarianCode", new { asklib = AskLibrarian });
}
В методе post на второй странице предпочитаем получать данные следующим образом:

Код: Выделить всё

public void OnGet(Model.AskLibrarian asklib)
{
askLibrarianVM = new AskLibrarianVM
{
Answered = false,
CreateDate = asklib.CreateDate,
LastUpdate = asklib.CreateDate,
RandomeCode = asklib.reciptCode,
Status = false,

};
}
Но asklib пуст, я установил точку останова в конце Get метода и обнаружил это asklib, если он заполнен допустимыми значениями, но в методе post, когда я пытаюсь получить данные, Asklib пуст
в чем моя ошибка

Подробнее здесь: https://stackoverflow.com/questions/723 ... azor-pages
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»