在我的 ASP.NET Core 網站中,我有一個類別庫,它執行一些無聊的邏輯,但最終回傳:
new RedirectResult("-some url");new ViewResult(....)
現在我不確定如何將模型傳遞給ViewResult?
我試過這個:
var viewResult = new ViewResult
{
ViewName = "MarketingPreferences",
};
viewResult.ViewData.Model = myModel; // Exception is thrown :(
但該viewData屬性為空。
于是我想:只要創造它,對吧?
viewResult.ViewData = new ViewDataDictionary(..)但我不知道該傳遞什么:(
有兩種選擇:
public ViewDataDictionary(ViewDataDictionary source);public ViewDataDictionary(IModelMetadataProvider metadataProvider, ModelStateDictionary modelState);
ViewDataDictionary而且我在第一個選項中沒有現有的...
第二個..我不知道anIModelMetadataProvider 是什么?
有人可以幫忙嗎?
uj5u.com熱心網友回復:
如果您想將模型傳遞給ViewResult,您可以按照以下代碼進行操作:
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.ModelBinding;
using Microsoft.AspNetCore.Mvc.ViewFeatures;
public class Test
{
Stu stu = new Stu()
{
Name = "Jack"
};
public ViewResult test()
{
var viewData = new ViewDataDictionary<Stu>(new EmptyModelMetadataProvider(), new ModelStateDictionary());
viewData = new ViewDataDictionary<Stu>(viewData, stu);
ViewResult viewresult = new ViewResult()
{
ViewData = viewData
};
return viewresult;
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/495008.html
標籤:C# asp.net-mvc asp.net 核心 剃刀页面
上一篇:通過分頁提交按鈕發送查詢引數
下一篇:參考類別庫
