在 ASP.NET 中使用 <%= %> 或 <%# %> 与 runat=server

2024-04-17

我有一个看起来像这样的网络控件



public class Foo : WebControl
{
  [Bindable(true)]
  [Category("Default")]
  [DefaultValue("")]
  [Localizable(true)]
  public string Bar { get; set; }

  protected override void Render(HtmlTextWriter output)
  {
    output.WriteLine(Bar);
  }
}
  

我想把这个 webcontrol 放在我的 aspx 页面中,如下所示:



<cc1:Foo Bar="<%= Fa.La.La %>/otherstuff" runat="server" />
  

(显然这段代码是为了显示问题而简化的)

在我的 Render 方法中,不评估变量 Fa.La.La。它以原始文本“”形式出现,我该如何评估它?

我并不特别关心变量是如何传入的。如果变量以 的形式传入,则可以对其求值,那就可以了。关键是我有一些服务器端变量需要在调用 Render() 方法之前/同时进行评估。

我唯一能想到的就是使用正则表达式来获取 的内容并使用反射或其他东西,但必须有一种更优雅的方法来做到这一点。

这个问题非常类似于在 href 中使用带有 runat=server 的服务器变量 https://stackoverflow.com/q/4306850/24267,但并不完全相同,因为没有一个答案有用。


好吧,首先您应该清楚区分这两个标签。 以下是我阅读过并实际使用过的一些要点。

  • The <%=表达式在渲染时计算
  • The <%#表达式的计算时间为DataBind()时间并且根本不被评估,如果 未调用 DataBind()。
  • <%#表达式可以用作属性 在服务器端控件中。<%=表达式不能。

阅读更多内容MSDN 博客 http://blogs.msdn.com/b/dancre/archive/2007/02/13/the-difference-between-lt-and-lt-in-asp-net.aspx

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 ASP.NET 中使用 <%= %> 或 <%# %> 与 runat=server 的相关文章

  • Guid 应包含 32 位数字和 4 个破折号

    我有一个包含 createuserwizard 控件的网站 创建帐户后 验证电子邮件及其验证 URL 将发送到用户的电子邮件地址 但是 当我进行测试运行时 单击电子邮件中的 URL 时 会出现以下错误 Guid should contain
  • 调试内存不足异常

    在修复我制作的小型 ASP NET C Web 应用程序的错误时 我遇到了 OutOfMemoryException 没有关于在哪里查看的提示 因为这是一个编译时错误 如何诊断此异常 我假设这正是内存分析发挥作用的地方 有小费吗 Thank
  • 使用 JQuery 根据下拉列表选择的值显示/隐藏控件

    我正在尝试使用 JQuery 根据下拉菜单的选定索引显示 隐藏 div 标签 但它不起作用 任何帮助将不胜感激 Thanks
  • MVC 操作过滤器和多线程

    我目前遇到了操作过滤器的线程问题 在我的应用程序上 我使用 ActionFilter 来执行每个操作的跟踪 此跟踪将提供统计信息 例如调用的持续时间 并记录参数被派往行动 实际的跟踪实现 由其他团队完成 使用 IDisposable 对象
  • 将 Windows 窗体应用程序转换为 Asp.net

    我问的是 您之前使用的将 C Windows 窗体应用程序转换为 ASP NET 的最佳工具是什么 我已经关于这个主题 发现了很多工具 但我希望有人根据他的使用情况推荐最好的工具 我真的不建议使用工具来进行转换 Web 应用程序和 WinF
  • 实体框架 4 DB 优先依赖注入?

    我更喜欢创建自己的数据库 设置索引 唯一约束等 使用 edmx 实体框架设计器 从数据库生成域模型是轻而易举的事 现在我有兴趣使用依赖注入来设置一些存储库 我查看了 StackOverflow 上的一些文章和帖子 似乎重点关注代码优先方法
  • 自定义错误页面未显示

    由于某种原因 当我收到 ASP NET 运行时错误时 它不会加载我的自定义错误页面
  • ASP.NET:如何隐藏ListBox控件垂直滚动条?

    我已经尝试过CSS 溢出 自动 这不起作用 有什么办法可以实现吗 我是否需要创建我在 ASP NET 论坛上看到的自定义控件 我会像您提到的那样创建一个自定义控件 您想要的目标是什么 创建自己的滚动条以放入列表框中
  • 有没有办法在 ASP.net 中制作像 gmail 那样的进度条?

    有没有办法在 ASP net 中制作像 gmail 那样的进度条 以下是一些基于 ASP NET 的进度栏控件 ASP NET AJAX 进度条控件 http mattberseth com blog 2008 05 aspnet ajax
  • 从 ASP .Net Web 服务访问 MSMQ 时出现权限错误

    我写了一个从消息队列读取的 Web 服务 这在卡西尼号下工作得很好 现在我已经在 IIS 下部署了该服务 当该服务尝试访问队列时 我收到一条错误消息 队列不存在或者您没有足够的权限来执行该操作 我已将 IIS 虚拟目录上的匿名访问用户设置为
  • ListItem 附加自定义值

    我在asp net中使用dropdownlist 它有代表下拉列表项目的ListItem集合 每个ListItem只有两个字段来保存数据 Value和Text字段 但这些还不够 我想保存更多数据对于每个项目 假设附加字段中有 Text1 和
  • 用户控制事件处理程序在回发时丢失

    我有一个名为 LeftMenu 的菜单用户控件 它有一个链接项的项目符号列表 它在 ascx 页面上是这样的
  • 我可以在 IIS 中禁用大量更改通知吗

    我偶尔会收到以下导致应用程序池被回收的事件 shutDownMessage CONFIG change HostingEnvironment initiated shutdown Overwhelming Change Notificati
  • 如何在 ASP.Net 中检索上传文件的“上次修改日期”

    我正在开发一个网站 客户端在其中上传一些文档文件 如 doc docx htm html txt pdf 等 我想检索上传文件的最后修改日期 我创建了一个处理程序 ashx 来完成保存文件的工作 Following is the code
  • 输入类型=图像 - onclick(),将触发其事件,但在 jquery 中的函数上表现不佳

    我认为这可能是两篇文章 2个问题 所以如果你对此发表评论 我会将它们分开 主要问题实际上是 我怎样才能为按钮设置图像背景 简单且正确 我想现在我可以确定这些事实了 因为我在将图像设置为按钮背景时遇到了 小 问题 我想 好吧 如果很难设置的话
  • 如果 mVC 中不存在该 url,则重定向到页面未找到页面

    如果 url 不存在 我需要将用户重定向到未找到页面 如果用户复制网址并将其粘贴到浏览器上 页面将显示找不到页面的方法 在这我需要将用户重定向到页面未找到页面 看看这个 如何在 ASP NET MVC 中正确处理 404 https sta
  • RegisterForEventValidation 只能在 Render 期间调用

    我有一个将从 jquery ajax 调用的 webmethod WebMethod public string TestMethod string param1 string param2 StringBuilder b new Stri
  • 多级父子排序

    我有一个物品清单 ID 名称 ParentID 1 abc 0 级别1 2 定义 1 3吉1 4 jkl 0 5米诺2 6 季度 5 7 AAA 1 8 威克斯 0 我希望列表排序为 美国广播公司 啊啊 定义 姆诺 吉 jkl 维克斯 也就
  • 如何在ASP.NET Webform中使用Jquery表单插件?

    我遇到了这个插件 http malsup com jquery form getting started http malsup com jquery form getting started 我想知道如何在 ASP NET WebForm
  • Html Helper“操作”未定义,Asp.NET Core 2.2

    我是 ASP NET Core MVC 的新手 我会在这个问题前说我已经阅读了其他类似的问题 但它们与我遇到的问题并不完全相同 我正在尝试实现动态左侧导航 其中每个按钮都是从我的数据库加载的 当我打电话时 Html Action NavMe

随机推荐