虽然服务器端的classic ASP方法包括在ASP.NET中工作,但我得到的印象是它不是首选的方法.我怎么"应该"达到同样的效果呢?

This is how I'm doing it at the moment:
<!-- #include file ="functionlib.aspx" -->

推荐答案

现在有很多选项可以提供这种效果,但方式不同.

  • 用户控件(.ascx)
  • 母版页(.master)
  • 服务器端控件(.dll)
  • 类库(.dll)
  • 应用程序代码类(.cs/.vb)

每种方法都有不同的用途,以实现不同的目标.这取决于你真正想做什么.给定include文件的名称,我可以想象您正在try 包含将在页面上下文中使用的库函数.

因此,您需要编写一个包含这些方法的类库,并将它们导入到您的应用程序/aspx中.

如果你正在寻找一个模板页面,它将完成大部分的布局工作,为不同的内容提供一个主体,那么你会对母版页感兴趣.

如果您正在寻找可以在多个页面中使用的模板控件,那么您将会关注用户控件.

如果您正在研究跨多个项目的多个用户可以使用的模板控件,那么您将研究服务器端控件.

If you're looking at a library of classes/methods then you'll develop a class library or use an app_code class which can be JIT compiled the first time it's called. This could at a stretch be considered more like classic ASP, but really it functions more like a class from a class library as a single unit. You can call it from within your codebehind or within <% %> tags in your aspx/ascx code without requiring a reference to a class library.

我们不再真正使用"包含"本身,但工具箱中的每一个工具都允许您为不同的场景提供类似的概念.作为开发人员,您将以不同的方式与网页的整个页面生命周期进行交互.ASP.NET与传统的ASP是截然不同的.它确实采取了不同的观点/方法,需要一定的耐心才能找出差异.

Asp.net相关问答推荐

try 在 .net 中使用 MS Graph 添加新的应用程序角色时出现 ODataError

如何在 MVC 中为国家和州/省创建 Select 列表

如何从 ASP.NET 中的代码隐藏文件访问 IFRAME?

如何在没有 Select 按钮的情况下在 GridView 中实现全行 Select ?

IE10 SCRIPT5009:__doPostBack未定义

如何在 ASP.NET 中使用时区?

解析器错误消息:无法加载类型sometype

如何缓存数据库表以防止在 Asp.net C# mvc 中出现许多数据库查询

ASP.NET 控件无法在 Visual Studio 2008 的代码隐藏中引用

在视图 Mvc.net 中访问路由值

Gridview ItemTemplate 中多个判断字段的最佳技术?

可空日期时间转换

从命令行复制 VS2008发布网站

使用 Moq 验证活动注册

发布网站项目时临时路径太长

错误请求 - 无效的主机名 ASP.net Visual Studio 2015

如何在 ASP.NET 中通过 LAN 访问您的网站

如何直接在 .aspx 页面中访问 web.config 设置?

在 ASP.NET 标识中添加角色

如何使 URL 重写与 web.Release.config 转换一起工作?