1

次のようにして、通常の ASP.NET C# ページから Masterpage プロパティにアクセスしています。

((SecondMasterPage)(Page.Master)).speciallink = true;  
((SecondMasterPage)(Page.Master)).specialspan = false;

ページのコード ビハインドでは問題なく動作しますが、基本クラス ファイル内の関数に移動しようとすると、次のようになります。

public class MyBaseClass : System.Web.UI.Page
{
public void portalFuncs()
{
    ((SecondMasterPage)(Page.Master)).speciallink = true;  
    ((SecondMasterPage)(Page.Master)).specialspan = false;
}
}

... 次のエラー メッセージが表示されます。

コンパイラ エラー メッセージ: CS0246: 型または名前空間名 'SecondMasterPage' が見つかりませんでした (using ディレクティブまたはアセンブリ参照がありませんか?)

基本クラス ファイルは App_Code ディレクトリにあり、そこにある他の関数はエラーなく動作します。この機能が動作しないのはなぜですか? また、この特定の関数のような関数が基本クラス ファイルで機能しない場合、どのページからでも呼び出せるようにするには、どこに配置すればよいでしょうか?

4

1 に答える 1

0

何か不足していない限り、SecondMasterPage ファイルのコード ビハインドに移動して、その名前空間を確認できるはずです。名前空間が正しくないか、必要なものとは異なる可能性があります。

基本クラスでは、using my.masterpage.namespace;ステートメントを使用して機能させます。

于 2010-02-11T01:22:44.023 に答える