此標記支持未在我工作的頁面的移動版本中呈現的代碼。如何將指令表示爲C#,以便它們可以有條件地
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<%@ Register TagPrefix="ComponentArt" Namespace="ComponentArt.Web.UI" Assembly="ComponentArt.Web.UI" %>
<%@ Register Src="Cart.ascx" TagName="Cart" TagPrefix="uc1" %>
<%@ Register Src="Search.ascx" TagName="Search" TagPrefix="uc5" %>
<%@ Register Src="Credits.ascx" TagName="Credits" TagPrefix="uc6" %>
<%@ Register Src="Menu.ascx" TagName="Menu" TagPrefix="uc3" %>
<%@ Register Src="taskspanel.ascx" TagName="TasksPanel" TagPrefix="uc6" %>
不出所料,大量不必要的腳本被加載。這不好。
如果有標記使這些註冊有條件,請參閱我的文檔。否則,我目前的想法是使用等價於標記的顯式代碼,並使其成爲有條件的。
我發現從this rather old resource ScriptManager但上述標記沒有明確引用js文件,所以我不知道如何映射兩者之間。任何人都可以建議嗎?
嘗試使用superjos的迴應下面我修改了頁面到位引用Page.Mobile,布爾屬性方便不已:
<%@ Page Language="C#" AutoEventWireup="false" EnableViewStateMac="false" CodeBehind="Forms.aspx.cs" Inherits="ASSAOHS.forms" %>
<%@ if (!Mobile) { %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<%@ Register TagPrefix="ComponentArt" Namespace="ComponentArt.Web.UI" Assembly="ComponentArt.Web.UI" %>
<%@ Register Src="Cart.ascx" TagName="Cart" TagPrefix="uc1" %>
<%@ Register Src="Search.ascx" TagName="Search" TagPrefix="uc5" %>
<%@ Register Src="Credits.ascx" TagName="Credits" TagPrefix="uc6" %>
<%@ Register Src="Menu.ascx" TagName="Menu" TagPrefix="uc3" %>
<%@ Register Src="taskspanel.ascx" TagName="TasksPanel" TagPrefix="uc6" %>
<%@ } %>
但這會產生Parser Error Message: The server block is not well formed.
寫像這樣
<%@ Page Language="C#" AutoEventWireup="false" EnableViewStateMac="false" CodeBehind="Forms.aspx.cs" Inherits="ASSAOHS.forms" %>
@if (!Mobile) {
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<%@ Register TagPrefix="ComponentArt" Namespace="ComponentArt.Web.UI" Assembly="ComponentArt.Web.UI" %>
<%@ Register Src="Cart.ascx" TagName="Cart" TagPrefix="uc1" %>
...
}
不會產生錯誤,但不會被處理; if語句和大括號只是在瀏覽器中傳遞並呈現爲文本。
這讓我回到選項二,使用ScriptManager將指令映射到顯式代碼以註冊內容。任何接受者?
感謝佩德羅試圖幫助,但該參考並沒有幫助如何將這些控制指令表示爲代碼。
它看起來像我可能需要使用選項三,其中重定向到另一個頁面,不包含指令。
您可以嘗試[this](https://stackoverflow.com/a/4405257/4014832)後面的代碼方法。 –