【发布时间】:2011-07-07 15:48:30
【问题描述】:
我正在将一堆 foxweb 程序转换为 asp.net。我在 asp 代码中调用的一些函数使用“外部函数”,我指的是我在 .vb 文件中定义的函数。例如,FileExists() 是一个不错的函数,我想将其引入一个名为 clsCommon.vb 的常见事物中。
我是这样实现的:
Option Explicit On
Option Strict On
Imports System
Imports System.Web.UI
Imports System.Web.UI.Page
Public Class clsCommon
Inherits Page
Public Shared Function FileExists(ByVal filename As String) As Boolean
If Dir$(filename) <> "" Then
Return True
Else
Return False
End If
End Function
End Class
我尝试过同时使用 DIR$() 和 DIR()。在每种情况下,网页上返回的错误都是:
编译器错误消息:BC30451:未声明名称“Dir”。
与我编写的其他函数一样,我调用 FileExists() 如下所示:
<%@ page Debug="true" inherits="clsCommon" src="clsCommon.vb" %>
<%
Dim filename as String = "example.txt"
If clsCommon.FileExists(filename) then
Response.Write(filename & " Exists")
else
Response.Write(filename & " does not Exist")
end if
%>
注意 1:虽然我想解决这个特定问题,但我真正在寻找的是获得这些函数的一般方法,如 DIR()、CHR() 等,我已经开始依赖这些函数在 VB 中。
注意2:asp似乎只看vb文本文件——而不看编译后的dll文件,所以我认为我使用的引用对它没有任何影响。
有人知道我错过了什么吗?
【问题讨论】:
-
你应该调用内置的
File.Exists方法。