Share via


Error: Method has no implementation (no RVA).

Question

Tuesday, March 14, 2006 1:12 PM

We have recently converted one of our web projects from ASP.NET 1.1 to 2.0.  After reviewing the conversion we have come accross a strange problem.  When we build the web site using a Web Deployment project one of the methods is empty (using reflector) and thus gives us the following error when the page is hit.

Parser Error Message: Could not load type 'DealRequest.DealSheet.Edit' from assembly 'Dps, Version=1.0.2264.20381, Culture=neutral, PublicKeyToken=null' because the method 'SaveSuccessful' has no implementation (no RVA).

Source Error:

Line 3:  <%@ Reference Control="~/DateTextBox.ascx" %>
Line 4:  <%@ Reference Control="~/DynamicButton.ascx" %>
Line 5:  <%@ page language="c#" smartnavigation="true" inherits="DealRequest.DealSheet.Edit, Dps" %>
Line 6:  <%@ Register TagPrefix="Example" TagName="DynamicButton" Src="dynamicbutton.ascx" %>
Line 7:  <%@ Register TagPrefix="Example" TagName="DateTextBox" Src="datetextbox.ascx" %>
 

Source File: /dealrequest/dealsheet/edit.aspx    Line: 5

We do not experience this issue when hitting the page locally.  Building the web project in Debug vs Release has no effect.  Something of note is that the "SaveSuccessful' method calls a static method in a different class and has over 300 parameters.  If this method call is commented out everything works and the compiler "implements" the rest of the 'SaveSuccessful' method.  Since this code worked in 1.1, does 2.0 have some sort of limitation or bug with a method call using a large number of parameters? All of the parameters are strings.

Does anyone have any ideas?  What does "no RVA" mean?

All replies (1)

Tuesday, March 14, 2006 3:55 PM

This issue has been resolved.  We modifed the web deployment project to create multiple dlls for each page and control instead of one single assembly.  This means there is a bug in the aspnet_merge.exe program when handling methods with an excessive number of parameters.

Thank you to all who helped with this.