0

我是一个 asp .net 初学者。我想在 Site.Master 中使用在 Site.Master.cs 创建的一些对象。有没有简单的方法来做到这一点?

我知道如何在 MVC 中做到这一点(通过使用视图(对象))。但是我怎样才能在普通的 ASP .net Web 应用程序中做到这一点?

4

3 回答 3

2

如果文件中的@Page指令.aspx具有文件中声明的类在Inherits="XYZ"哪里,则可以简单地向类添加一个字段并为其分配一个值。您只需使用其名称即可在文件中访问它。XYZ.csprotected.aspx

您还可以在单​​个请求期间使用HttpContext.Items属性来保留对象:

HttpContext.Current.Items["SavedItem"] = "hello world";

并在页面中使用它:

<%= ((string)Context.Items["SavedItem"]) %>
于 2012-05-14T18:56:50.277 回答
2

我不明白你到底想做什么。

如果你想在标签的标题中插入一些字符串,你可以在SiteMaster.master文件中插入以下内容:

<img src="<%= Page.ResolveUrl("~/") %>images/logo.png">

代替:

<img src="images/logo.png">

在第一种情况下,将从应用程序的根目录计算路径。在第二种情况下,将有相对链接。这是因为服务器将计算Page.ResolveUrl("~")函数的值并将其写入src标签中。

如果您正确定义它们,您可以对任何其他方法、类执行相同的操作。但我不建议您在 .aspx 文件(或 .master 文件)中实现复杂的逻辑。因为在测试和设计此类应用程序时可能会遇到很多困难。

还有其他服务器标签

  1. <% %> - 嵌入式代码块是在页面呈现阶段执行的服务器代码。块中的代码可以执行当前页面类中的编程语句和调用函数。描述和示例
  2. <%= %> - 对于显示单条信息最有用。描述和示例
  3. <%# %> - 数据绑定表达式语法。描述和示例
  4. <%$ %> - ASP.NET 表达式。描述和示例
  5. <%@ %> - 指令语法。描述和示例
  6. <%-- --%> - 服务器端评论。描述和示例
  7. <%: %> 像 <%= %> - 但是 HtmlEncodes 输出(Asp.Net 4 的新功能)。描述和示例

另一种方式:您可以使用 JSON 向客户端发送一些数据,然后使用 javascript 对其进行处理。看看这个项目

于 2012-05-14T19:18:09.857 回答
0

Site.Master.cs 中的任何公共或受保护的属性或方法都可以从 Site.Master 访问。

但是如何在 aspx 中调用 c# 代码?

有几种方法,包括构造<%= %>数据绑定语法

如果您解释了您要达到的目标,那将会有所帮助。

于 2012-05-14T18:56:15.623 回答