asp.net - 经典 ASP 端口 -- 如何替换 #INCLUDE (.inc) 文件

标签 asp.net asp-classic migration porting

我们正在将经典 ASP 应用程序移植到 ASP.NET。我们如何处理#INCLUDE (.inc) 文件?现在它们导致构建错误,因为 ASP.NET 认为变量“未声明”。

最佳答案

您还没有说明 .inc 文件中的内容。让我们假设有一堆 const 定义和一些辅助函数。

您可能会考虑多种变体。

  1. 通常只有一个 .inc 包含在所有或大多数 ASP 页面中。
  2. 其他 .inc 文件包含在一些 ASP 页面中,因为它们只是封装了一些共享功能。

对于变体 1,它可能有助于创建一个派生自 Page 的类,该类将原始 .inc 文件常量公开为属性,并将其函数公开为方法。让所有移植到 ASP.NET 的 ASP 页面都继承自这个新类,而不是直接继承自 Page

对于变体 2,在 App_Code 中创建包含静态属性和方法的类(或者如果 .inc 包含的是 VBScript 类的直接端口)。使用这些包含的 ASP 到 ASP.NET 页面端口需要在它们对原始 .inc 文件中的成员的使用前加上它们不是静态(共享)成员的类的名称。

如果 include 最初包含静态标记,那么更好的移植方法是创建具有代表性的 .master 页面,并让移植的 ASP 页面适本地使用这些母版。

关于asp.net - 经典 ASP 端口 -- 如何替换 #INCLUDE (.inc) 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2254213/

相关文章:

mysql - 用户输入位置 - 如何循环包含路线的数据库

asp-classic - 在 ASP 中声明变量时出错

MySQL:将数据从 OldDB 普通表迁移到多对多关系

ruby - 如何描述 Rails 3 迁移中的枚举列?

c# - 隐藏在设计模式下使用它的页面中的母版页内容

c# - 根据评级显示项目 MVC

javascript - Angular 6 : Child route as parameter not updated whenever it goes to parameter link

Windows Server 2008 上的 Paypal 经典 asp msxml 错误

migration - 如何升级PowerBuilder代码?

c# - 如何在我的 C# 代码中获得#Eval ("X") 的结果?