Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 如何运行从数据库检索的asp代码_Html_Asp.net_Controls - Fatal编程技术网

Html 如何运行从数据库检索的asp代码

Html 如何运行从数据库检索的asp代码,html,asp.net,controls,Html,Asp.net,Controls,我的ASP项目中只有一个页面,单击不同的链接后,我从数据库中检索相应的HTML并加载它。所以我有一些链接,它们随时都在页面中(HTML的一部分不是从数据库中检索到的),但是在一些div中我得到了HTML,在那里我还有一些链接,我想作为ASPLinkButton控件运行 这就是,f.e.,始终保持: <div id="mainCenter"> <asp:Literal ID="ltlContentCenter" runat="server" /> </div&

我的ASP项目中只有一个页面,单击不同的链接后,我从数据库中检索相应的HTML并加载它。所以我有一些链接,它们随时都在页面中(HTML的一部分不是从数据库中检索到的),但是在一些div中我得到了HTML,在那里我还有一些链接,我想作为ASP
LinkButton
控件运行

这就是,f.e.,始终保持:

<div id="mainCenter">
    <asp:Literal ID="ltlContentCenter" runat="server" />
</div>
我在DB中对应的是:

<div class="onCenterSmall">
    <asp:LinkButton ID="LinkButton10" Text="test" CommandArgument="test" OnCommand="loadPage_Command"
                runat="server" />
</div>
<div class="onCenterSmall"></div>
<div class="onCenterSmall"></div>

这段HTML只是放在页面上的
之间。
正如你自己看到的,我得到的结果是字符串。对于HTML代码,这很好,但是对于
我对您所采取的方法有疑问(为什么要在数据库中存储ASP.NET标记的片段?),但是如果必须,我认为
Page.ParseControl
是您的朋友。看


您可以使用
Page.ParseControl
从输入字符串构建
控件
,然后可以将其附加到任何控件(例如a)的
控件
集合中。

我知道这不会回答您的问题,但只是一些想法:

  • 为什么需要使用链接按钮?为什么不使用标准的html锚定标记呢

  • 如果是因为您需要执行某些代码,您计划如何处理这些代码?您是否要假定数据库中存储的所有html都从同一个类继承


  • 不过,不得不说,这听起来是一个非常糟糕的想法。你想解决什么问题?

    从数据库中获取HTML等等的想法很糟糕,我知道。。。但这是我老板的要求。无可争辩。我需要一个LinkButton控件,因为我只有一个页面,我用相应的HTML代码更新(加载)它,因此我不能使用
    标记浏览不同的页面,而是使用该控件知道何时加载下一个相应的HTML。:)这是一种解决方案,但我仍然需要将此控件(链接)放在从数据库获得的
    div
    之间。我不能用数据库中的HTML编写
    ,因为它仍然会以字符串的形式输出,无法工作。我只能在页面的代码中编写它,而该代码总是停留在那里,因此无法提供所需的结果。至此,我仍然回到了老问题。
    asp:PlaceHolder
    控件必须位于要将数据库中的内容添加到的页面上,而不必位于您的内容中。场景:
    。此处的
    占位符添加控件,然后添加其余内容。但在内容中,父“mediaWindow”下还有其他子div,我需要其中一个子div中的控件。因此,基本上我必须(使用占位符)显示控件的放置位置,这在本例中对我没有帮助。在本例中,您应该使用占位符作为容器,将从数据库检索的内容添加到其中。您应该完全删除
    ltlContentCenter
    文本,因为该控件不允许您添加已解析的控件。如果我理解正确,您说我必须将html(内容)和其他控件加载到
    占位符中?但是我找不到如何将内容添加到
    占位符中。例如,我使用
    ltlContent.Text=…内容作为字符串。然后有如下代码:
    myPlaceHolder.addTheContent;myPlaceHolder.Controls.Add(控件)
    
    <div class="onCenterSmall">
        <asp:LinkButton ID="LinkButton10" Text="test" CommandArgument="test" OnCommand="loadPage_Command"
                    runat="server" />
    </div>
    <div class="onCenterSmall"></div>
    <div class="onCenterSmall"></div>