![](/img/trans.png)
[英]Razor PageHandler PartialViewResult Model Type mismatch
[英]Extending PartialViewResult, Model isn't validated?
我有一個擴展PartialViewResult
的類,在這個類中,我通過ViewData
設置Response.StatusCode
和Model。
我的模型和狀態代碼已按預期設置,但是我的模型未通過驗證。 是否需要采取其他步驟來確保模型得到驗證? 感覺好像我迷上了管道中的錯誤位置(為時已晚),並且應該在將模型傳遞給結果之前對模型進行驗證,但我不是100%。
這是課程:
public class PartialViewResultWithErrorCode<T> : PartialViewResult where T : class
{
private readonly HttpStatusCode statusCode;
private readonly T model;
public PartialViewResultWithErrorCode(HttpStatusCode statusCode, string viewName, T model)
{
this.statusCode = statusCode;
this.model = model;
ViewName = viewName;
}
public override void ExecuteResult(ControllerContext context)
{
context.HttpContext.Response.StatusCode = (int)statusCode;
ViewData = new ViewDataDictionary(model);
base.ExecuteResult(context);
}
}
任何想法表示贊賞。
可能為時已晚。 在InvokeActionResultWithFilters期間執行PartialViewResult。
在此之前發生了ModelValidation。 您可以創建一個ActionFilter並嘗試在OnActionExecuting中實現相同的效果,從而獲得更好的結果。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.