簡體   English   中英

Umbraco:后端用戶控制

[英]Umbraco: Backend User Control

我已經在Umbraco儀表板中成功創建並集成了成功的用戶控件。 該頁面以搜索控件開始,該控件返回可編輯項目的列表。

在我的用戶控件中,我無法直接指向編輯頁面的鏈接。 我正在嘗試直接鏈接到它。 這是代碼:

<asp:hyperlinkfield
    datanavigateurlformatstring="/usercontrols/useradmin/item_edit.aspx?itemID={0}"
    datanavigateurlfields="itemID" Text="edit" />

Umbraco無法處理直接鏈接,因此我不確定如何建立鏈接。 而是返回此錯誤:

沒有umbraco文檔與url'http:// localhost:1169 / usercontrols / useradmin / item_edit.aspx?itemID = f66c8f06-9e0e-4f3c-ac0d-5544e0998094 '匹配umbraco嘗試使用此xpath查詢匹配它'/ root / node / node [@urlName =“ usercontrols”] / node [@urlName =“ useradmin”] / node [@urlName =“ item_edit”]')

有沒有一種方法可以將一個用戶控件鏈接到自定義儀表板控件中的另一個控件?

回發選項

除了嘗試在頁面之間鏈接之外,為什么不使用回發在現有用戶控件中進行所有工作呢?

即在您的用戶控件中這樣的方法

public void Handle_Click(object sender, System.Event args)
{
    //Do Something
}

由於umbraco不會停留在同一頁面上,因此它不會嘗試解釋該URL,因此可以正常工作。

鏈接到頁面選項

要啟用鏈接到另一個頁面,您需要在web.config文件中添加一個條目,告訴umbraco忽略該路徑(因此它不會嘗試解釋URL)。

只需將您的路徑添加到以下appSetting中即可:

<add key="umbracoReservedPaths" value="/umbraco,/install,/YOUR/PATH/HERE" />

該鏈接隨后將在儀表板控件中起作用,但是它將鏈接到未應用所​​有儀表板設計的頁面(因此選項卡將消失,等等)。 您可以將設計應用到您的.aspx頁面,但是這需要很多工作。

iFrame選項

由於“鏈接到頁面”選項中所述的限制,您可能希望將管理頁面加載到放置在.ascx控件上的iFrame中。

這樣,您可以從.aspx轉到.aspx,並且仍然保留儀表板選項卡和周圍的設計。

您仍然需要將包含.aspx頁的文件夾添加到web.config中的umbracoReservedPaths條目中

<add key="umbracoReservedPaths" value="/umbraco,/install,/YOUR/PATH/HERE" />

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM