我有一个使用 All In One 样式构建的网页(带有HTML的页面中的VB),我被要求将它们分开。
这是 Default.aspx 开始的方式:
<%@ Import Namespace="System.Net" %>
<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="System.Configuration" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.OleDb" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<%@ Import Namespace="System.Globalization" %>
<%@ Import Namespace="System.Security" %>
<html>
<head>
<title>View an Activity (AFE)</title>
<script language="VB" runat="server">
Private m_url1, m_url2, m_downloadText, txtSupplementPage, txtExcerpt, SearchLocation, SearchLocation2, SearchLocation3, SearchLocationOrig As String
Private myTotal1, myTotal2 As Double
Private m_credentials As CredentialCache
' Start the initial page
Protected Sub Page_Load(sender As Object, e As EventArgs)
m_credentials = New CredentialCache()
If Not IsPostBack Then
继续。这只是为了告诉你我在做什么。
我创建了一个名为 Default2.aspx 的新类似文件,其中包含 Page 指令,指定 CodeBehind 文件和命名空间(继承)。然后我把VB代码拿出来了:
<%@ Page Language="vb" AutoEventWireup="true" CodeBehind="Default.aspx.vb" Inherits="app2._Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>View an Activity (AFE)</title>
由于 Default.aspx 未使用Code Behind文件,因此我将新的Code Behind文件命名为 Default.aspx.vb 。
我在此Code Behind文件中使用命名空间 app2 创建了一个新的 _Default ,并将所有VB从 Default.aspx 复制到它:
Namespace app2
Public Class _Default
Inherits System.Web.UI.Page
Inherits System.Net
Inherits System.IO
Inherits System.Configuration
Inherits System.Data
Inherits System.Data.OleDb
Inherits System.Data.SqlClient
Inherits System.Globalization
Inherits System.Security
Private m_url1, m_url2, m_downloadText, txtSupplementPage, txtExcerpt, SearchLocation, SearchLocation2, SearchLocation3, SearchLocationOrig As String
Private myTotal1, myTotal2 As Double
Private m_credentials As CredentialCache
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
m_credentials = New CredentialCache()
If Not IsPostBack Then
我正在尝试提供足够的代码,让每个人都可以看到起点和现在的位置。
我将两个新文件上传到网络服务器,然后浏览它们以查看它们的外观。
但是,现在当我尝试在浏览器中显示 Default2.aspx 时,我得到分析程序错误:
分析程序错误消息:无法加载类型'app2._Default'。
来源错误:
第1行:&lt;%@ Page Language =“vb”AutoEventWireup =“true”CodeBehind =“Default.aspx.vb”Inherits =“app2._Default”%&gt;
第2行:
第3行:
答案 0 :(得分:1)
对于网站:将CodeBehind更改为CodeFile。
<%@ Page Language="vb" AutoEventWireup="true" CodeFile="Default.aspx.vb" Inherits="app2._Default" %>
对于Web应用程序:将Web项目的名称添加到Inherits属性。
<%@ Page Language="vb" AutoEventWireup="true" CodeBehind="Default.aspx.vb" Inherits="nameOfYourWebProject.app2._Default" %>
此外,您提供的_Default类,您只能有一个Inherits,我认为您打算将它们添加为页面顶部的Imports。