• 締切済み

クラスの記述を別ファイルに・・・

VS2005でASP.NET Webサイトの開発を行っています。 新規作成時に生成される"Default.aspx.vb"に以下のようなコードを記述しました。 1 : Imports System 2 : 3 : Partial Class _Default 4 : Inherits System.Web.UI.Page 5 : 6 : Dim objX = New Space1.Class1 7 : 8 : Dim X = objX.method1(10, 2) 9 : 10 : Dim Y = objX.method2(10, 2) 11 : 12 : End Class 13 : 14 : Namespace Space1 15 : Class Class1 16 : Public Function Method1(ByVal X1 As Integer, ByVal X2 As Integer) As Integer 17 : Dim X3 As Integer 18 : X3 = X1 + X2 19 : Return X3 20 : End Function 21 : 22 : Public Function Method2(ByVal Y1 As Integer, ByVal Y2 As Integer) As Integer 23 : Dim Y3 As Integer 24 : 25 : Y3 = Y1 - Y2 26 : Return Y3 27 : End Function 28 : End Class 29 : End Namespace そこで、15行目以降にある"Class1"なのですが、 よく使用するクラスなので、15~29行目のコードを別のファイルに 記述したいと思っています。(例えば"AAA.vb"とかに) しかし、15~29行目を別ファイル(AAA.vb)に記述した途端、 "Default.aspx.vb"の6行目でSpace1.Class1が宣言されてない。 というエラーが生じます。 このようにクラスの記述部を別ファイルにした場合、 Default.aspx.vbでうまくインクルード(レガシーASPの言い方ですが) させるには、 どうすればよろしいのでしょうか?

みんなの回答

  • Hardking
  • ベストアンサー率45% (73/160)
回答No.1

15~29行目を別ファイル(AAA.vb)に記述したとあるが 14行目も含まないと名前空間名の定義宣言として不備がり。 故に6行目のオブジェクト変数を新規生成する際に Sapce1が認識されないと思います。 修正案 14~29行目を別ファイル(AAA.vb)に記述し コンパイル順をAAA.vb , Default.aspx.vbとする。

関連するQ&A

専門家に質問してみよう