2012-08-24 95 views
0

我在我的应用程序中有多个母版页。我做了一个自定义类型和inharit这一切母版页:错误无法加载类型'MyMaster'?

public class MyMaster : System.Web.UI.MasterPage 
{ 
    private int myno; 

    public int MyNo 
    { 
     get { return 50; } 
     set { myno = value; } 
    } 

} 

基本上myno常见于所有母版页和母版页将在内容网页上的变化。要添加这个属性我在内容页中加入:

<%@ MasterType TypeName=MyMaster %> 

运行页面上我得到了对象错误。请引导我。

感谢

回答

1

如果你在一个网络网站工作,你应该把通常的派生类母版在应用程序的App_Code文件夹。当VS编译您的站点时,AppCode文件夹中的类将被编译到站点的名称空间中,并可供应用程序的代码隐藏页面使用。

如果您使用的web应用程序,你应该能够把类文件中的站点的根目录,并直接从项目中的任何其他页面的代码隐藏引用它,假设所有的命名空间引用是正确的。

另外请确保您的班级文件的Build Action设置为Compile。你可以在属性窗口中通过在解决方案资源管理器中选择类文件来检查它。

0

我刚刚有这个问题。

原来我的Page指令的MasterPageFile属性与我的MasterType指令中的TypeName不匹配。

换句话说,我给了错误的母版页文件的TypeName。哎呀!

下面是该问题的演示。

<%@ Page Title="" Language="VB" MasterPageFile="~/Departments/SomeMaster.master" AutoEventWireup="false" 
    CodeFile="ExamplePage.aspx.vb" Inherits="Departments_ExamplePage" Theme="Default" %> 

<%@ MasterType TypeName="Departments_SomeOtherMaster" %> 
相关问题