Я создаю веб-приложение ASP.NET 2.0, которое использует BasePage.aspx, который наследуется всеми остальными страницами .aspx.Я разработал набор данных с 3 хранимыми процедурами, который называется dsBaseInfo.Я объявляю его закрытым членом класса, и когда я запускаю приложение, оно говорит мне, что тип dsBaseInfo не определен.Я также пробовал набор данных вместо моего dsBaseInfo, и я получаю ту же ошибку, тип не определен.Я пробовал Private dsBase как dsBaseInfo, Private dsBase как dsBaseInfo = none, Private dsBase как новый dsBaseInfo, Private dsBase как набор данных и так далее.Я даже пытался переместить объявление в саб PreInit и ту же ошибку.Я также сделал Private dsBAse как dsBaseInfo в .aspx, который наследует BasePage, и он работает на этой странице.
Imports System
Imports System.Web.UI
Imports System.Data.SqlClient
Public Class BasePage
Inherits System.Web.UI.Page
Private dsBase As dsBaseInfo = Nothing 'dataset
Private _userInfo As UserInfo
Private Sub Page_PreInit(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.PreInit
If User.Identity.IsAuthenticated Then
_userInfo = New UserInfo
If dsBase Is Nothing Then
If Session("BaseInfo") Is Nothing Then
dsBase = New dsBaseInfo
RetrieveBaseInfo(dsBase)
Session("BaseInfo") = dsBase
Else
dsBase = TryCast(Session("BaseInfo"), dsBaseInfo)
End If
End If
End If
End Sub
Private Sub RetrieveBaseInfo(ByVal dsBase As dsBaseInfo)
Using da As New dsBaseInfoTableAdapters.ssp_GetUserBaseInfoTableAdapter
da.Fill(dsBase.ssp_GetUserBaseInfo, User.Identity.Name)
End Using
Dim intID As Integer = dsBase.ssp_GetUserBaseInfo.Rows(0)(dsBase.ssp_GetUserBaseInfo.IDColumn.ColumnName)
Using da As New dsBaseInfoTableAdapters.ssp_GetCompaniesTableAdapter
da.Fill(dsBase.ssp_GetCompanies, intID)
End Using
Using da As New dsBaseInfoTableAdapters.ssp_GetMasterMenuListTableAdapter
da.Fill(dsBase.ssp_GetMasterMenuList, intID)
End Using
End Sub
End Class