【问题标题】:Selectively Including files in C#.net web application在 C#.net Web 应用程序中选择性地包含文件
【发布时间】:2014-05-27 20:41:01
【问题描述】:

我正在尝试修改具有以下特征的应用程序:

  • 用 C#.net 编写
  • 使用 Visual Studio 2010
  • 应用程序使用主表来保持通用性

主表具有以下内容:

<%@ Master Language="C#" AutoEventWireup="true" CodeFile="mysheet.master.cs" Inherits="master_mysheet" %>

现在,目前,主表有一个包含文件,该文件引入了一个公共页脚:

#include file="inc/my-footer.inc"

这就是我想要做的:我想修改主表,以便能够根据会话变量中包含的值读取页脚......即(不是真正的代码,而只是提供一些东西我想要什么的想法) 如果会话(“x”)=“a”那么 #include 文件="inc/my-footer1.inc" 别的 #include file="inc/my-footer2.inc"

我的第一反应是使用一些 vbscript:

<script type="text/vbscript" language="vbscript">
    document.write("vbscript example.")
</script>

但是,它不会在页面加载时自动运行 vbscript 代码。

有谁知道: - 我需要真正让它工作的语法?即让 vbscript 在页面加载时自动运行,并包含页面? - 或者,有没有更好的方法来解决这个问题? (也许通过在 C# 中进行一些编码)

注意:我在 C# 方面经验丰富;但是,自从 ASP 经典时代以来,我没有做过任何 vbscript,所以我的知识已经过时了。

【问题讨论】:

  • 如果我理解正确 - WebUserControl 不合适吗?

标签: c# asp.net include


【解决方案1】:

这行得通吗?

 <% 
 if ("a" == Session["x"]) {
   Html.RenderPartial("a");
 } else {
   Html.RenderPartial("other");
 }
 %>

【讨论】:

  • 这确实有效。我确实做了一个小修改...我用#include 指令替换了“Html.RenderPartial”。
猜你喜欢
  • 1970-01-01
  • 2019-01-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多