虽然服务器端的经典 ASP 方法可以在 ASP.NET 中使用,但我的印象是它不是首选方法。我“应该”如何达到同样的效果?
这就是我现在正在做的事情:
<!-- #include file ="functionlib.aspx" -->
最佳答案
您现在有许多选项可以提供这种效果,但方式不同。
- 用户控件 (.ascx)
- 母版页 (.master)
- 服务器端控件 (.dll)
- 类库 (.dll)
- App_Code 类 (.cs/.vb)
每种方法都有不同的用途,以实现不同的目的。这取决于你真正想做什么。考虑到包含文件的名称,我想您正在尝试包含将在页面上下文中使用的库函数。
因此,您将编写一个包含这些方法的类库,并将它们导入到您的应用程序/aspx 中。
如果您正在考虑模板化一个页面,该页面将完成大部分布局工作以提供不同内容的正文,那么您会对母版页感兴趣。
如果您正在寻找可在许多页面中使用的模板控件,那么您将需要用户控件。
如果您正在寻找可供许多项目中的许多用户使用的模板控件,那么您将查看服务器端控件。
如果您正在查看类/方法库,那么您将开发一个类库或使用 app_code 类,该类可以在第一次调用时进行 JIT 编译。这可以被认为更像是经典的 ASP,但实际上它的功能更像是类库中的一个类作为一个单元。您可以从代码隐藏内或 aspx/ascx 代码中的 <% %> 标记内调用它,而无需引用类库。
我们实际上不再使用“包含”本身,但是工具包中的每个工具都允许您为不同的场景提供类似的概念。作为开发人员,您将以不同的方式与网页的整个页面生命周期进行交互。 ASP.NET 与传统 ASP 截然不同。这确实需要不同的观点/方法,并且需要一定的耐心来找出差异。
关于服务器端的 ASP.NET 等效项包括,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/894720/