0

我对asp经典应用程序很陌生。下面的代码片段来自我们将要迁移Windows Server 2008RC的asp 经典应用程序

1.Set objConfig_Constantsinc = Server.CreateObject("Notion.Configuration")
2.Dim account
3.account = objConfig_Constantsinc.GetConfig("SQLAccount")

根据我在第 1 行的理解,我们正在创建一个 COM 类的实例。现在在使用此实例的第 3 行中,我们正在尝试获取一些配置数据 "SQLAccount" 。这是我的疑问。在经典的 ASP 应用程序中,我们在哪里存储这些类型的配置字符串(例如:“SQLAccount”)。有没有全局配置文件的概念。请指导我。

4

1 回答 1

0

正如您自己在评论中所述, Notion.Configuration 项目是某种 com 对象,如果您将其移植到新服务器,您真的没有问题(假设您移植了底层存储机制,即 com 对象可以将变量存储在任何地方(例如:sql、注册表、文件)

如果出于某种原因您想取消 com 对象来存储配置数据(即您的问题是关于全局配置文件的存在) - 在 Classic ASP 中有一种机制可以做到这一点。

具体来说,global.asa 文件,通常,common.asa 文件放置在站点的根目录中,并公开可以从应用程序中的任何 asp 文件中读取的应用程序变量。

更多详细信息:http: //msdn.microsoft.com/en-us/library/ms525316 (v=vs.90).aspx

声明应用程序级别的全局变量很容易:

来自 global.asa 的示例:

<script language="VBScript" runat="Server">
Sub Application_OnStart
    Application("SQLAccount") = "whatver"
End Sub

任何其他 asp 页面中的示例:

response.write Application("SQLAccount")

不过我会提醒你,声明不必要的全局变量会适得其反,你应该仔细选择在全局级别公开的内容,以避免内存中的混淆/重复项。

于 2012-06-26T10:58:10.403 回答