That doesn't compile. There is no OrderedEnumerable class that I can find. Just the interface. Changing it to the interface also doesnt compile. I put the code in my Main.cs class.
Any idea where I'm going wrong? Sent from my iPhone On Feb 29, 2012, at 11:48 AM, Rodrigo Kumpera <[email protected]> wrote: > Hi, > > As simple workaround while we figure out how to fix it add a static method to > you App class with the following: > > static void LinqWorkAround () { > System.Linq.OrderedEnumerable<Foo>.CreateOrderedEnumerable<int> (null, null, > false); > } > > This should take care of this crash. If you're building your project with > user code linking enabled, > make sure to have this method called during initialization, something like > this: > > static bool dummy = false; > > static void main () { > > if (dummy) LinqWorkAround (); > } > > > > On Wed, Feb 29, 2012 at 2:24 PM, danmiser <[email protected]> wrote: > I've searched through this group, StackOverflow, and the MT bugzilla list. > There are a lot of mentions about this, but I'm having a hard time finding > an authoritative answer. Assume the following code: > > var list = new List<Foo>(); > list.Add (new Foo { Id = 3, Name="def"}); > list.Add (new Foo { Id = 2, Name="def"}); > list.Add (new Foo { Id = 1, Name="ggg"}); > var x = from l in list orderby l.Name, l.Id select l; > foreach (var item in x) { ... do something ... } > > public class Foo { > public int Id { get; set; } > public string Name { get; set; } > } > > When running on the device, I get the info pasted below. > > Notes: > 1. This only fails on the device > 2. It doesn't fail if you just have one orderby item > > I have a lot of LINQ in my POCO classes, and I wouldn't relish the idea of > unwinding it all. > > What do I need to do to make this work? > > Unhandled Exception: System.ExecutionEngineException: Attempting to JIT > compile method > 'System.Linq.OrderedEnumerable`1<Foo>:CreateOrderedEnumerable<int> > (System.Func`2<Foo, int>,System.Collections.Generic.IComparer`1<int>,bool)' > while running with --aot-only. > > at System.Linq.Enumerable.ThenBy[Foo,Int32] (IOrderedEnumerable`1 source, > System.Func`2 keySelector, IComparer`1 comparer) [0x00007] in > /Developer/MonoTouch/Source/mono/mcs/class/System.Core/System.Linq/Enumerable.cs:2787 > at System.Linq.Enumerable.ThenBy[Foo,Int32] (IOrderedEnumerable`1 source, > System.Func`2 keySelector) [0x00000] in > /Developer/MonoTouch/Source/mono/mcs/class/System.Core/System.Linq/Enumerable.cs:2779 > at TestLibrary.HelloContext.List () [0x00006] in > /Users/danmiser/code/MonoTouchRestDemo/TestLibrary/MyClass.cs:18 > at MonoTouchRestDemo.MonoTouchRestDemoViewController.<ViewDidLoad>m__0 > (System.Object sender, System.EventArgs e) [0x00006] in > /Users/danmiser/code/MonoTouchRestDemo/MonoTouchRestDemo/MonoTouchRestDemoViewController.cs:38 > at MonoTouch.UIKit.UIControlEventProxy.Activated () [0x00000] in > /Developer/MonoTouch/Source/monotouch/src/UIKit/UIControl.cs:30 > at MonoTouch.UIKit.UIApplication.Main (System.String[] args, System.String > principalClassName, System.String delegateClassName) [0x00042] in > /Developer/MonoTouch/Source/monotouch/src/UIKit/UIApplication.cs:29 > at MonoTouchRestDemo.Application.Main (System.String[] args) [0x00000] in > /Users/danmiser/code/MonoTouchRestDemo/MonoTouchRestDemo/Main.cs:16 > [ERROR] FATAL UNHANDLED EXCEPTION: System.ExecutionEngineException: > Attempting to JIT compile method > 'System.Linq.OrderedEnumerable`1<TestLibrary.HelloClone>:CreateOrderedEnumerable<int> > (System.Func`2<TestLibrary.HelloClone, > int>,System.Collections.Generic.IComparer`1<int>,bool)' while running with > --aot-only. > > at System.Linq.Enumerable.ThenBy[Foo,Int32] (IOrderedEnumerable`1 source, > System.Func`2 keySelector, IComparer`1 comparer) [0x00007] in > /Developer/MonoTouch/Source/mono/mcs/class/System.Core/System.Linq/Enumerable.cs:2787 > at System.Linq.Enumerable.ThenBy[Foo,Int32] (IOrderedEnumerable`1 source, > System.Func`2 keySelector) [0x00000] in > /Developer/MonoTouch/Source/mono/mcs/class/System.Core/System.Linq/Enumerable.cs:2779 > at TestLibrary.HelloContext.List () [0x00006] in > /Users/danmiser/code/MonoTouchRestDemo/TestLibrary/MyClass.cs:18 > at MonoTouchRestDemo.MonoTouchRestDemoViewController.<ViewDidLoad>m__0 > (System.Object sender, System.EventArgs e) [0x00006] in > /Users/danmiser/code/MonoTouchRestDemo/MonoTouchRestDemo/MonoTouchRestDemoViewController.cs:38 > at MonoTouch.UIKit.UIControlEventProxy.Activated () [0x00000] in > /Developer/MonoTouch/Source/monotouch/src/UIKit/UIControl.cs:30 > at MonoTouch.UIKit.UIApplication.Main (System.String[] args, System.String > principalClassName, System.String delegateClassName) [0x00042] in > /Developer/MonoTouch/Source/monotouch/src/UIKit/UIApplication.cs:29 > at MonoTouchRestDemo.Application.Main (System.String[] args) [0x00000] in > /Users/danmiser/code/MonoTouchRestDemo/MonoTouchRestDemo/Main.cs:16 > Terminating runtime due to unhandled exception > Stacktrace: > > > Native stacktrace: > > 0 MonoTouchRestDemo 0x01616970 > mono_handle_native_sigsegv + 280 > 1 MonoTouchRestDemo 0x016396c4 > sigabrt_signal_handler + > 180 > 2 libsystem_c.dylib 0x331b6539 _sigtramp + 48 > 3 libsystem_c.dylib 0x331abf5b pthread_kill + 54 > 4 libsystem_c.dylib 0x331a4feb abort + 94 > 5 MonoTouchRestDemo 0x016f2774 monoeg_g_logv + 152 > 6 MonoTouchRestDemo 0x016f27c0 > monoeg_assertion_message > + 52 > 7 MonoTouchRestDemo 0x01600348 mono_thread_abort + > 148 > 8 MonoTouchRestDemo 0x0161653c > mono_handle_exception_internal + 3188 > 9 MonoTouchRestDemo 0x01616740 > mono_handle_exception + > 24 > 10 MonoTouchRestDemo 0x016382d8 > mono_arm_throw_exception > + 172 > 11 MonoTouchRestDemo 0x005c361c throw_exception + 48 > 12 MonoTouchRestDemo 0x01602910 > mono_jit_compile_method > + 68 > 13 MonoTouchRestDemo 0x016a9ed8 mono_compile_method > + 56 > 14 MonoTouchRestDemo 0x01619d10 > common_call_trampoline + > 1364 > 15 MonoTouchRestDemo 0x01617de4 > mono_vcall_trampoline + > 228 > 16 MonoTouchRestDemo 0x005c3528 > generic_trampoline_vcall > + 136 > 17 MonoTouchRestDemo 0x003b1c5c > System_Linq_Enumerable_ThenBy_TestLibrary_HelloClone_int_System_Linq_IOrderedEnumerable_1_TestLibrary_HelloClone_System_Func_2_TestLibrary_HelloClone_int > + 144 > 18 MonoTouchRestDemo 0x003b0ca0 > TestLibrary_HelloContext_List + 512 > 19 MonoTouchRestDemo 0x006a9d34 > MonoTouchRestDemo_MonoTouchRestDemoViewController__ViewDidLoadm__0_object_System_EventArgs > + 300 > 20 MonoTouchRestDemo 0x0000edcc > MonoTouch_UIKit_UIControlEventProxy_Activated + 68 > 21 MonoTouchRestDemo 0x0057c188 > wrapper_runtime_invoke_object_runtime_invoke_dynamic_intptr_intptr_intptr_intptr > + 200 > 22 MonoTouchRestDemo 0x01602fbc > mono_jit_runtime_invoke > + 1644 > 23 MonoTouchRestDemo 0x016ab43c mono_runtime_invoke > + > 128 > 24 MonoTouchRestDemo 0x01707b54 > monotouch_trampoline + > 3228 > 25 CoreFoundation 0x34321435 -[NSObject > performSelector:withObject:withObject:] + 52 > 26 UIKit 0x3778b9eb -[UIApplication > sendAction:to:from:forEvent:] + 62 > 27 UIKit 0x3778b9a7 -[UIApplication > sendAction:toTarget:fromSender:forEvent:] + 30 > 28 UIKit 0x3778b985 -[UIControl > sendAction:to:forEvent:] + 44 > 29 UIKit 0x3778b6f5 > -[UIControl(Internal) > _sendActionsForEvents:withEvent:] + 492 > 30 UIKit 0x3778c02d -[UIControl > touchesEnded:withEvent:] + 476 > 31 UIKit 0x3778a50f -[UIWindow > _sendTouchesForEvent:] + 318 > 32 UIKit 0x37789f01 -[UIWindow > sendEvent:] + > 380 > 33 UIKit 0x377704ed -[UIApplication > sendEvent:] + 356 > 34 UIKit 0x3776fd2d > _UIApplicationHandleEvent + 5808 > 35 GraphicsServices 0x30ba2df3 PurpleEventCallback > + > 882 > 36 CoreFoundation 0x3439b553 > __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 38 > 37 CoreFoundation 0x3439b4f5 > __CFRunLoopDoSource1 + > 140 > 38 CoreFoundation 0x3439a343 __CFRunLoopRun + > 1370 > 39 CoreFoundation 0x3431d4dd > CFRunLoopRunSpecific + > 300 > 40 CoreFoundation 0x3431d3a5 CFRunLoopRunInMode > + 104 > 41 GraphicsServices 0x30ba1fcd GSEventRunModal + > 156 > 42 UIKit 0x3779e743 UIApplicationMain + > 1090 > 43 MonoTouchRestDemo 0x00026cfc > wrapper_managed_to_native_MonoTouch_UIKit_UIApplication_UIApplicationMain_int_string___intptr_intptr > + 240 > 44 MonoTouchRestDemo 0x006a8f20 > MonoTouchRestDemo_Application_Main_string__ + 152 > 45 MonoTouchRestDemo 0x0057c188 > wrapper_runtime_invoke_object_runtime_invoke_dynamic_intptr_intptr_intptr_intptr > + 200 > 46 MonoTouchRestDemo 0x01602fbc > mono_jit_runtime_invoke > + 1644 > 47 MonoTouchRestDemo 0x016ab43c mono_runtime_invoke > + > 128 > 48 MonoTouchRestDemo 0x016af6e8 > mono_runtime_exec_main + > 436 > 49 MonoTouchRestDemo 0x016b435c > mono_runtime_run_main + > 756 > 50 MonoTouchRestDemo 0x01607344 mono_jit_exec + 140 > 51 MonoTouchRestDemo 0x015ff550 main + 2168 > 52 MonoTouchRestDemo 0x00002504 start + 52 > > -- > View this message in context: > http://monotouch.2284126.n4.nabble.com/LINQ-and-OrderBy-again-tp4432245p4432245.html > Sent from the MonoTouch mailing list archive at Nabble.com. > _______________________________________________ > MonoTouch mailing list > [email protected] > http://lists.ximian.com/mailman/listinfo/monotouch >
_______________________________________________ MonoTouch mailing list [email protected] http://lists.ximian.com/mailman/listinfo/monotouch
