动态包含ASP.NET网页

时间:2015-04-17 05:41:32

标签: razor asp.net-webpages

ASP.NET Web Pages/Razor中有没有办法在不知道名字的情况下包含文件,例如助手或类似文件?

在Web窗体中,我通过动态添加用户控件来完成此操作,如下面的代码,但我想知道是否有办法在网页中执行类似操作?

ContentTemplateBase control = (ContentTemplateBase)Page.LoadControl("~/ContentTemplates/" + detail.Template + ".ascx");
control.DataSource = detail;
plhTemplate.Controls.Add(control);

我知道我可以用一堆条件语句来做这件事,比如......

if (detail.Template== "Template1")
{
    @MyHelpers.Template1(detail)
} else if (detail.Template== "Template2")
{
    @MyHelpers.Template2(detail)
} ... etc

...但希望这样做而不必列出所有可能的选项。

1 个答案:

答案 0 :(得分:0)

在重新阅读网页文档时,我发现我可以使用RenderPage()方法来包含来自其他文件的代码,因此这似乎是最佳选择。