每當我嘗試從位于共享/組件檔案夾結構的任何位置但直接位于共享/組件檔案夾結構下的剃須刀頁面中指定視圖組件時,我都會收到錯誤訊息。例如,shared/components/UserCRUD/{mycomponent} 將不起作用。請看下面的圖片:
我在其中包含視圖組件。請注意,我還嘗試使用 typeof() 和 nameof() 進行此操作,智能感知可以正確識別子檔案夾下的正確位置。

我的相關檔案夾結構:

我正在使用的命名空間。請注意,我也嘗試使用“ViewComponent”后綴來命名它。

最后是例外。最奇怪的是,例外并沒有看我遞給它的路徑。它完全省略了 UserCRUD。

uj5u.com熱心網友回復:
您擁有的檔案夾設定與默認查看位置格式不匹配。
即使調整這些似乎也不起作用 -或者至少我沒有成功。
固定值和預定義占位符({0}視圖名稱、{1}頁面名稱)的組合似乎沒有給出預期的結果;該Components段的某些內容總是會自動添加。
下面確實有效。
AdminDashboard/Index.cshtml包括該UserTable組件,如下所示。
您還可以保留當前通話,因為該通話似乎有效。
@await Component.InvokeAsync("UserTable")
通過將完整路徑回傳到相應視圖來調整您的UserTable組件,即.UserTable.cs/Areas/Identity/Pages/Shared/Components/UserCRUD/UserTable/UserTable.cshtml
public class UserTable : ViewComponent
{
public IViewComponentResult Invoke(string module)
=> View("/Areas/Identity/Pages/Shared/Components/UserCRUD/UserTable/UserTable.cshtml");
}
您必須對該UserCRUD檔案夾中的其他視圖執行類似操作。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/530187.html
上一篇:使用ViewModel更新屬性值
下一篇:MVC表單資料無法系結到模型
