我有一個名為 BaseGrid.razor的簡單組件
然后我有另一個名為 CustomGrid.razor的組件
@inherits BaseGrid
...
@{
base.BuildRenderTree(__builder);
}
...
使用 Rider 時,__builder 會被標記為紅色
無法決議符號“__builder”
但專案構建得很好
將 ReSharper 與 Visual Studio 一起使用時也會出現此問題
我不知道它是 ReShaper 問題還是 Visual Studio 也這樣做了,但是看到所有帶有紅色下劃線的檔案讓我在嘗試查找有真正問題的檔案時感到頭疼
uj5u.com熱心網友回復:
在您的情況下,問題在于 Razor 編譯器設法解釋您編碼的內容并且偶然作業。在代碼視圖中,Visual Studio 不知道 __builder 存在:它只存在于 Razor 編譯器從 Razor 檔案構建的 C# 類中。
這是您向我們展示的內容的我的版本,它在語法上“更”正確(不確定這是正確的表達方式,但它是我現在能想到的最好的表達方式)。它不會引發錯誤,因為 Visual Studio 理解RenderFragment.
基本網格
<h3>BaseGrid</h3>
@code {
}
網格
我將基本BuildRenderTree方法分配給RenderFragment委托,然后設定組件以呈現渲染片段。
@inherits BaseGrid
<h3>Grid</h3>
@baseRenderFragment
@code {
RenderFragment? baseRenderFragment;
protected override void OnInitialized()
{
baseRenderFragment = base.BuildRenderTree;
}
}
然后看起來像這樣:

轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/432509.html
上一篇:查看python中所有繼承的類
