2009-04-13 10 views
3

コードビハインドページでPublicクラスを宣言しようとすると、.netでエラーが発生します。asp.netのpublic変数のようなクラスを使用する

Partial Class _Default 
    Inherits System.Web.UI.Page 

    Public someVariable as integer 
    Public someClass as className 

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load [...] 

私は取得していますエラーがあるBC30508: 'someClass' cannot expose type 'className' in namespace '<Default>' through class '_Default'.

は、ここでの目標は、この<%=someClass.classProperty%>

のようなaspxページにスクリプトブロック内のクラスのプロパティにアクセスしている私は、私はかどうかわからないんだけど適切なメソッドを試してみてください(私はパブリッククラスを宣言するいくつかの方法を試しました)、あるいはそれができるのであれば...それを見ていただきありがとうございます。

+0

classNameはどのように宣言されていますか? – driis

答えて

8

classNameタイプの保護レベルを確認してください。それを公開することを忘れましたか?

このエラーメッセージは、アクセスが制限されているものがあることを意味し、制限外のアクセスを許可する方法で使用しようとしています。たとえば、classNameタイプがinternalまたはprivateの子クラス_Defaultの場合、そのタイプのパブリックメンバーをプロパティとして追加すると、そのタイプのインターフェイスはそのインターフェイスの一部として使用できなくなり、使用できなくなります。

+0

Doh ...あなたは正しいです!みんな、ありがとう。 – Birk

0

_Defaultクラスの保護レベルを確認します。部分クラスとして設定されていない可能性があり、保護レベルの問題が発生します。

+0

彼の投稿されたサンプルには「パーシャル」 –

1

"className"クラスの宣言はほぼ確実です。公開に設定してみてください。

関連する問題