Receiving error when using an ssi include in asp.net vb

I have a web page programmed in asp.net vb.  I am using a server side include for a top menu.  The page I'm including is aa_includes/menu_top1.txt.  In Visual Studio 2008, when I flip to "Design" mode to see the page, I get an error "Error Creating Control - Table1, Object reference not set to an instance of an object."  I have pin pointed the problem to the actual include statement.  If I take the include out, the error goes away and I can use the "Design" mode in Visual Studio 2008.  I can't seem to figure out how to resolve this problem.  I have attached the code for the web page and attached the include file.  Thanks for any guidance.
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <style type="text/css"></style>
    <link href="main_site.css" rel="stylesheet" type="text/css" />    
 
</head>
<body>
    <asp:Table ID="Table1"  Width="100%" Height="100%" BackColor="White" runat="server">
        <asp:TableRow>
            <asp:TableCell  HorizontalAlign="Center" VerticalAlign="Top">
                <asp:Table ID="Table2" runat="server">
                    <asp:TableRow CssClass="TopRow1">
                        <asp:TableCell>
                            <asp:Table ID="Table3" width="800" HorizontalAlign="Center" runat="server">
                                <asp:TableRow HorizontalAlign="Right">
                                    <asp:TableCell>
                                    <!-- #Include file="aa_includes/menu_top1.txt" -->
                                    </asp:TableCell>                                
                                </asp:TableRow>                                                                                    
                            </asp:Table>                                                                                                                        
                        </asp:TableCell>                    
                    </asp:TableRow>                                                                                                    
                </asp:Table>                        
            </asp:TableCell>                
        </asp:TableRow>            
    </asp:Table>
</body>
</html>

Open in new window

menu-top1.txt
OB1CanobieAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

jinalCommented:
Hello ,

Try to use UserControl .



/* WebUserControl3.ascx */
<%@ Control Language="VB" AutoEventWireup="true" CodeFile="WebUserControl3.ascx.vb" Inherits="WebUserControl3" %>
<asp:table ID="TopRowMenu" HorizontalAlign="Right" runat="server">
    <asp:TableRow HorizontalAlign="Right">
        <asp:TableCell CssClass="TopRowMenu"><a onmouseover="CssClass='TopRowMenu'" onmouseout="CssClass='TopRowMenu'" onclick="location.href='aa_aboutus/servicetimes.aspx'">Service Times</a></asp:TableCell>
        <asp:TableCell CssClass="TopRowMenu">&nbsp;|&nbsp;</asp:TableCell>
        <asp:TableCell CssClass="TopRowMenu"><a onmouseover="CssClass='TopRowMenu'" onmouseout="CssClass='TopRowMenu'" onclick="location.href='aa_aboutus/directions.aspx'">Direction</a></asp:TableCell>
        <asp:TableCell CssClass="TopRowMenu">&nbsp;|&nbsp;</asp:TableCell>
        <asp:TableCell CssClass="TopRowMenu"><a onmouseover="CssClass='TopRowMenu'" onmouseout="CssClass='TopRowMenu'" onclick="location.href='aa_secure/announcements.aspx'">Announcements</a></asp:TableCell>
        <asp:TableCell CssClass="TopRowMenu">&nbsp;|&nbsp;</asp:TableCell>
        <asp:TableCell CssClass="TopRowMenu"><a onmouseover="CssClass='TopRowMenu'" onmouseout="CssClass='TopRowMenu'" onclick="location.href='aa_aboutus/contactus.aspx'">Contact Us</a></asp:TableCell>
        <asp:TableCell CssClass="TopRowMenu">&nbsp;|&nbsp;</asp:TableCell>
        <asp:TableCell CssClass="TopRowMenu"><a onmouseover="CssClass='TopRowMenu'" onmouseout="CssClass='TopRowMenu'" onclick="location.href='quicklinks.aspx'">Quick Links</a></asp:TableCell>
        <asp:TableCell CssClass="TopRowMenu">&nbsp;|&nbsp;</asp:TableCell>
        <asp:TableCell CssClass="TopRowMenu"><a onmouseover="CssClass='TopRowMenu'" onmouseout="CssClass='TopRowMenu'" onclick="location.href='aa_webcasts/podcasts.aspx'">Podcasts</a></asp:TableCell>
    </asp:TableRow>                            
</asp:table>
 
/* ASPX */
 
<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>
<%@ Register src="WebUserControl3.ascx" tagname="WebUserControl3" tagprefix="uc1" %> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <style type="text/css"></style>
    <link href="main_site.css" rel="stylesheet" type="text/css" />    
 
</head>
<body>
    <asp:Table ID="Table1"  Width="100%" Height="100%" BackColor="White" runat="server">
        <asp:TableRow>
            <asp:TableCell  HorizontalAlign="Center" VerticalAlign="Top">
                <asp:Table ID="Table2" runat="server">
                    <asp:TableRow CssClass="TopRow1">
                        <asp:TableCell>
                            <asp:Table ID="Table3" width="800" HorizontalAlign="Center" runat="server">
                                <asp:TableRow HorizontalAlign="Right">
                                    <asp:TableCell>
                                   <uc1:WebUserControl3 ID="WebUserControl31" runat="server" />                                    </asp:TableCell>                                
                                </asp:TableRow>                                                                                    
                            </asp:Table>                                                                                                                        
                        </asp:TableCell>                    
                    </asp:TableRow>                                                                                                    
                </asp:Table>                        
            </asp:TableCell>                
        </asp:TableRow>            
    </asp:Table>
</body>
</html>

Open in new window

0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
OB1CanobieAuthor Commented:
jinal:

I understand what you suggested, but what I am trying to accomplish is have one menu file as an include where I can edit in one place and all web pages are effected.  If I use the webcontrol method, if I make a change in the menu, I would have to change all pages in the site, and currently there are over 100.  Any other ideas of how accomplish what I am attempting?
0
jinalCommented:
Hello ,

I am not understanding what you are saying ?
If you create one user control . then you put that control on 100 pages. Now you made changes to UserControl than it automatically reflect in all pages.
0
OB1CanobieAuthor Commented:
jinal: Thanks for your help.  The code worked great.
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
.NET Programming

From novice to tech pro — start learning today.