繁体   English   中英

从 bin 文件 asp.net vb.net 虚拟目录导入 class 的问题

[英]problem importing class from bin file asp.net vb.net virtual directory

我遇到的问题是我的电脑上正在运行 iis 7。 在根文件 wwwroot 中,我有一个网站文件夹,即 [apex],它是一个虚拟目录。 该文件夹中是一个 bin 文件夹,其中包含已编译的 class 和命名空间。

然后在一个 aspx 文件中,我尝试导入命名空间并在命名空间内使用 class 。


    <%@ import namespace="namespacexxx">
    <script language="vb" runat="server">
    sub pgld() handles me.load
    dim sds as new the_class
    end sub
    </script>

命名空间和类名已经检查好,没有错误。 但在编译阶段,我收到“类型未定义”消息。

好的,然后,在 iis 7 控制面板中,我将整个网站文件夹从“虚拟目录”转换为“应用程序”类型。 问题消失了!!

知道发生了什么吗?

在 IIS 6 中,虚拟目录的概念有点不同。 在 IIS7 中,如果它是一个虚拟目录,则您没有使用该文件夹中的文件来编译应用程序,而是使用根网站可执行文件夹。 所以 - 你在 IIS 7 中的“应用程序”需要是一个“应用程序”才能编译和搜索这些资源的 bin 文件夹 - 否则它只是一个虚拟目录,它是 URL 上的某个路径,指向“某个路径”磁盘。 这些文件夹可以有自己的 web.config 但它们的二进制文件不会像您期望的那样作为“单独的应用程序”进行处理 - 代码被编译到父站点的二进制文件中。

我猜您没有在网站中添加该特定 ddl 的参考。 在使用之前,您需要在您的网站中添加参考。

Right Click Website properties --> Click Add Reference

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM