[Mono-bugs] [Bug 681547] New: Invalid method signature of Microsoft.Web.Infrastructure.DynamicValidationHelper.ValidationUtility.GetUnvalidatedCollections

bugzilla_noreply at novell.com bugzilla_noreply at novell.com
Tue Mar 22 07:44:26 EDT 2011


https://bugzilla.novell.com/show_bug.cgi?id=681547

https://bugzilla.novell.com/show_bug.cgi?id=681547#c0


           Summary: Invalid method signature of
                    Microsoft.Web.Infrastructure.DynamicValidationHelper.V
                    alidationUtility.GetUnvalidatedCollections
    Classification: Mono
           Product: Mono: Class Libraries
           Version: 2.10.x
          Platform: x86
        OS/Version: Windows 7
            Status: NEW
          Severity: Major
          Priority: P5 - None
         Component: Sys.Web
        AssignedTo: mhabersack at novell.com
        ReportedBy: ilya.lukyanov at gmail.com
         QAContact: mono-bugs at lists.ximian.com
          Found By: ---
           Blocker: ---


User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US)
AppleWebKit/534.7 (KHTML, like Gecko) Chrome/7.0.517.44 Safari/534.7

I'm using stable Mono-2.10.1.
My application uses System.Web.Mvc 3.0 with default ViewEngine.

I have a simple form on my .aspx ViewPage.
When i post it, the browser shows an error:

Method not found:
'Microsoft.Web.Infrastructure.DynamicValidationHelper.ValidationUtility.GetUnvalidatedCollections'.

Description: HTTP 500. Error processing request.

Stack Trace:

System.MissingMethodException: Method not found:
'Microsoft.Web.Infrastructure.DynamicValidationHelper.ValidationUtility.GetUnvalidatedCollections'.
  at System.Web.Helpers.Validation.Unvalidated (System.Web.HttpRequestBase
request) [0x00000] in <filename unknown>:0 
  at System.Web.Mvc.FormValueProviderFactory.<.ctor>b__0
(System.Web.Mvc.ControllerContext cc) [0x00000] in <filename unknown>:0 
  at System.Web.Mvc.FormValueProviderFactory.GetValueProvider
(System.Web.Mvc.ControllerContext controllerContext) [0x00000] in <filename
unknown>:0 
  at
System.Web.Mvc.ValueProviderFactoryCollection+<>c__DisplayClassc.<GetValueProvider>b__7
(System.Web.Mvc.ValueProviderFactory factory) [0x00000] in <filename unknown>:0 
  at
System.Linq.Enumerable+<CreateSelectIterator>c__Iterator27`2[System.Web.Mvc.ValueProviderFactory,<>f__AnonymousType2`2[System.Web.Mvc.ValueProviderFactory,System.Web.Mvc.IValueProvider]].MoveNext
() [0x00000] in <filename unknown>:0 
  at
System.Linq.Enumerable+<CreateWhereIterator>c__Iterator35`1[<>f__AnonymousType2`2[System.Web.Mvc.ValueProviderFactory,System.Web.Mvc.IValueProvider]].MoveNext
() [0x00000] in <filename unknown>:0 
  at
System.Linq.Enumerable+<CreateSelectIterator>c__Iterator27`2[<>f__AnonymousType2`2[System.Web.Mvc.ValueProviderFactory,System.Web.Mvc.IValueProvider],System.Web.Mvc.IValueProvider].MoveNext
() [0x00000] in <filename unknown>:0 
  at
System.Collections.Generic.List`1[System.Web.Mvc.IValueProvider].AddEnumerable
(IEnumerable`1 enumerable) [0x00000] in <filename unknown>:0 
  at System.Collections.Generic.List`1[System.Web.Mvc.IValueProvider]..ctor
(IEnumerable`1 collection) [0x00000] in <filename unknown>:0 
  at System.Linq.Enumerable.ToList[IValueProvider] (IEnumerable`1 source)
[0x00000] in <filename unknown>:0 
  at System.Web.Mvc.ValueProviderFactoryCollection.GetValueProvider
(System.Web.Mvc.ControllerContext controllerContext) [0x00000] in <filename
unknown>:0 
  at System.Web.Mvc.ControllerBase.get_ValueProvider () [0x00000] in <filename
unknown>:0 
  at System.Web.Mvc.ControllerActionInvoker.GetParameterValue
(System.Web.Mvc.ControllerContext controllerContext,
System.Web.Mvc.ParameterDescriptor parameterDescriptor) [0x00000] in <filename
unknown>:0 
  at System.Web.Mvc.ControllerActionInvoker.GetParameterValues
(System.Web.Mvc.ControllerContext controllerContext,
System.Web.Mvc.ActionDescriptor actionDescriptor) [0x00000] in <filename
unknown>:0 
  at System.Web.Mvc.ControllerActionInvoker.InvokeAction
(System.Web.Mvc.ControllerContext controllerContext, System.String actionName)
[0x00000] in <filename unknown>:0 

It happens because 
System.Web.Helpers.Validation.Unvalidated from System.Web.WebPages assembly
calls 
ValidationUtility.GetUnvalidatedCollections(HttpContext, ref
NameValueCollection, ref NameValueCollection, ref NameValueCollection, ref
HttpCookieCollection);

but in assembly Microsoft.Web.Infrastructure provided with mono this method has
deifferent signature:

GetUnvalidatedCollections(HttpContext context, out Func<NameValueCollection>
formGetter, out Func<NameValueCollection> queryStringGetter)


Reproducible: Always

Steps to Reproduce:
1. Post any data to a simple form

Actual Results:  
an error:

Method not found:
'Microsoft.Web.Infrastructure.DynamicValidationHelper.ValidationUtility.GetUnvalidatedCollections'.

Description: HTTP 500. Error processing request.

Stack Trace:

System.MissingMethodException: Method not found:
'Microsoft.Web.Infrastructure.DynamicValidationHelper.ValidationUtility.GetUnvalidatedCollections'.
  at System.Web.Helpers.Validation.Unvalidated (System.Web.HttpRequestBase
request) [0x00000] in <filename unknown>:0 
  at System.Web.Mvc.FormValueProviderFactory.<.ctor>b__0
(System.Web.Mvc.ControllerContext cc) [0x00000] in <filename unknown>:0 
  at System.Web.Mvc.FormValueProviderFactory.GetValueProvider
(System.Web.Mvc.ControllerContext controllerContext) [0x00000] in <filename
unknown>:0 
  at
System.Web.Mvc.ValueProviderFactoryCollection+<>c__DisplayClassc.<GetValueProvider>b__7
(System.Web.Mvc.ValueProviderFactory factory) [0x00000] in <filename unknown>:0 
  at
System.Linq.Enumerable+<CreateSelectIterator>c__Iterator27`2[System.Web.Mvc.ValueProviderFactory,<>f__AnonymousType2`2[System.Web.Mvc.ValueProviderFactory,System.Web.Mvc.IValueProvider]].MoveNext
() [0x00000] in <filename unknown>:0 
  at
System.Linq.Enumerable+<CreateWhereIterator>c__Iterator35`1[<>f__AnonymousType2`2[System.Web.Mvc.ValueProviderFactory,System.Web.Mvc.IValueProvider]].MoveNext
() [0x00000] in <filename unknown>:0 
  at
System.Linq.Enumerable+<CreateSelectIterator>c__Iterator27`2[<>f__AnonymousType2`2[System.Web.Mvc.ValueProviderFactory,System.Web.Mvc.IValueProvider],System.Web.Mvc.IValueProvider].MoveNext
() [0x00000] in <filename unknown>:0 
  at
System.Collections.Generic.List`1[System.Web.Mvc.IValueProvider].AddEnumerable
(IEnumerable`1 enumerable) [0x00000] in <filename unknown>:0 
  at System.Collections.Generic.List`1[System.Web.Mvc.IValueProvider]..ctor
(IEnumerable`1 collection) [0x00000] in <filename unknown>:0 
  at System.Linq.Enumerable.ToList[IValueProvider] (IEnumerable`1 source)
[0x00000] in <filename unknown>:0 
  at System.Web.Mvc.ValueProviderFactoryCollection.GetValueProvider
(System.Web.Mvc.ControllerContext controllerContext) [0x00000] in <filename
unknown>:0 
  at System.Web.Mvc.ControllerBase.get_ValueProvider () [0x00000] in <filename
unknown>:0 
  at System.Web.Mvc.ControllerActionInvoker.GetParameterValue
(System.Web.Mvc.ControllerContext controllerContext,
System.Web.Mvc.ParameterDescriptor parameterDescriptor) [0x00000] in <filename
unknown>:0 
  at System.Web.Mvc.ControllerActionInvoker.GetParameterValues
(System.Web.Mvc.ControllerContext controllerContext,
System.Web.Mvc.ActionDescriptor actionDescriptor) [0x00000] in <filename
unknown>:0 
  at System.Web.Mvc.ControllerActionInvoker.InvokeAction
(System.Web.Mvc.ControllerContext controllerContext, System.String actionName)
[0x00000] in <filename unknown>:0 

Expected Results:  
correct request processing

-- 
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.


More information about the mono-bugs mailing list