Bug 18961 - compile Masterpage's masterpage
Summary: compile Masterpage's masterpage
Status: NEW
Alias: None
Product: Class Libraries
Classification: Mono
Component: System.Web ()
Version: 2.10.x
Hardware: Other Linux
: Low normal
Target Milestone: Untriaged
Assignee: Bugzilla
Depends on:
Reported: 2014-04-11 16:03 UTC by Chris barr
Modified: 2014-04-16 15:19 UTC (History)
2 users (show)

Is this bug a regression?: ---
Last known good build:

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.

Please create a new report for Bug 18961 on GitHub or Developer Community if you have new information to add and do not yet see a matching new report.

If the latest results still closely match this report, you can use the original description:

  • Export the original title and description: GitHub Markdown or Developer Community HTML
  • Copy the title and description into the new report. Adjust them to be up-to-date if needed.
  • Add your new information.

In special cases on GitHub you might also want the comments: GitHub Markdown with public comments

Related Links:

Description Chris barr 2014-04-11 16:03:15 UTC
Description of Problem:
Compiler does not compile master page's master.

Steps to reproduce the problem:
<%@ Master Language="C#" AutoEventWireup="true" CodeFile="uiMaster.master.cs" CompilationMode="Always" Inherits="masters_uiMaster" %> 
Hay! I'm the site main nav! :D 
<asp:ContentPlaceHolder id="bodyContent" runat="server"></asp:ContentPlaceHolder>

<%@ Master Language="C#" MasterPageFile="~/masters/uiMaster.master" AutoEventWireup="true" CodeFile="cmsMaster.master.cs" Inherits="masters_cmsMaster" %> 
<asp:Content ID="body" ContentPlaceHolderID="bodyContent" Runat="Server">
HAY! I'm the site's content that's managed via a Content Management System. 

((masters_uiMaster)Master).someGlobalSetting = value; //possibly enabling an edit icon or passing the session up to the top. 

<%@ Page Title="" Language="C#" MasterPageFile="~/masters/cmsMaster.master" AutoEventWireup="true" CodeFile="index.aspx.cs" Inherits="index" %> 

Actual Results:
Server Error in '/' Application 

Compilation Error 

Description: Error compiling a resource required to service this request. Review your source file and modify it to fix this error. 

Compiler Error Message: CS0246: The type or namespace name `uiMaster' could not be found. Are you missing a using directive or an assembly reference? 

Source Error: 

Line 108:         set 
Line 109:         { 
Line 110:             ((uiMaster)Master).session = value; 
Line 111:             session = value; 
Line 112:         } 

Source File: <site path>/masters/cmsMaster.master.cs  Line: 110 

Show Detailed Compiler Output: 

gmcs /target:library /lib:"<site path>/Bin" /debug+ /optimize- /warn:4 /out:"/tmp/www-data-temp-aspnet-0/16aeb545/App_Web_cmsMaster.master.fbcfebdd.56d3bce3.dll" /r:"/usr/lib/mono/gac/System/" /r:"/usr/lib/mono/gac/System.Configuration/" /r:"/usr/lib/mono/gac/System.Data/" /r:"/usr/lib/mono/gac/System.Drawing/" /r:"/usr/lib/mono/gac/System.Web/" /r:"/usr/lib/mono/gac/System.Web.Services/" /r:"/usr/lib/mono/gac/System.Runtime.Serialization/" /r:"/usr/lib/mono/gac/System.IdentityModel/" /r:"/usr/lib/mono/gac/System.ServiceModel/" /r:"/usr/lib/mono/gac/System.ServiceModel.Web/" /r:"/usr/lib/mono/gac/System.Xml/" /r:"/var/www/nabor_site/Bin/mysql.web.dll" /r:"/var/www/nabor_site/Bin/mysql.data.dll" /r:"/var/www/nabor_site/Bin/mysql.data.entity.dll" /r:"/usr/lib/mono/gac/System.Core/" /r:"/usr/lib/mono/gac/System.Web.Extensions/" /r:"/usr/lib/mono/gac/System.Xml.Linq/" /r:"/usr/lib/mono/gac/System.Data.DataSetExtensions/" /r:"/tmp/www-data-temp-aspnet-0/16aeb545/App_Code.2dea60b1.dll" /r:"/var/www/nabor_site/Bin/AWSSDK.dll" /r:"/var/www/nabor_site/Bin/mysql.visualstudio.dll" /r:"/var/www/nabor_site/Bin/pdfcrowd.dll" /r:"/tmp/www-data-temp-aspnet-0/16aeb545/App_global.asax_61f60619.dll"  /nowarn:0169 /d:DEBUG  -- "/tmp/www-data-temp-aspnet-0/16aeb545/App_Web_cmsMaster.master.fbcfebdd.56d3bce3_0.cs" "/tmp/www-data-temp-aspnet-0/16aeb545/App_Web_cmsMaster.master.fbcfebdd.56d3bce3_1.cs" 

<site path>/masters/cmsMaster.master.cs(110,15): error CS0246: The type or namespace name `masters_uiMaster' could not be found. Are you missing a using directive or an assembly reference? 

Show Complete Compilation Source: 

Line 1: using System; 
Line 2: using System.Collections.Generic; 
Line 3: using System.Linq; 
Line 4: using System.Web; 
Line 5: using System.Web.UI; 
Line 6: using System.Web.UI.WebControls; 
Line 7: using <company NS>; 
Line 8: 
Line 9: public partial class masters_cmsMaster : System.Web.UI.MasterPage 
Line 10: { 
Line 11:     //var 
Line 12:     sessionManagement session = null; 
Line 13:     managedContent content = null; 
Line 14:     documentManager documents = null; 
Line 15:     //var 
Line 16: 
Line 17:     protected void Page_Load(object sender, EventArgs e) 
Line 18:     { 
<Lines Removed>
Line 69:     } 
Line 70: 
<Lines Removed>
Line 105: 
Line 106:     public sessionManagement managedSession 
Line 107:     { 
Line 108:         set 
Line 109:         { 
Line 110:             ((masters_uiMaster)Master).session = value; 
Line 111:             session = value; 
Line 112:         } 
Line 113:     } 
<Lines Removed>
Line 122: } 
Version information: Mono Runtime Version: (Debian; ASP.NET Version: 2.0.50727.1433

Expected Results:
The index.aspx, cmsMaster.aspx, AND uiMaster.aspx to all compile when index.aspx is requested from the browser as it does for Windows.

How often does this happen? 
100% of the time.

Additional Information:
If there is a page that directly accesses uiMaster and compiles it then index -> cmsMaster can use the pre-compiled page.
Comment 1 Chris barr 2014-04-16 15:04:14 UTC
Low priority?
Then I need a workaround until this bug gets worked on because our new application is launching soon and this has a 100% error rate and the application will not run because of it.
Can anything be done at all or work around this bug?
Comment 2 Miguel de Icaza [MSFT] 2014-04-16 15:19:43 UTC
The priority is a field for internal Xamarin use that reflect's our team's priority.

Since we do not do anything on the web, it is low for us.   But we kept the severity to normal, in case someone wants to do anything about it.

Xamarin does not do anything with ASP.NET.