Index: System.Data.SQLite/SQLiteFunction.cs ================================================================== --- System.Data.SQLite/SQLiteFunction.cs +++ System.Data.SQLite/SQLiteFunction.cs @@ -1190,18 +1190,34 @@ string param2 ); ///////////////////////////////////////////////////////////////////////////// +#if !PLATFORM_COMPACTFRAMEWORK + /// + /// This class implements a SQLite function using a . + /// All the virtual methods of the class are + /// implemented using calls to the , + /// , , + /// and strongly typed delegate types + /// or via the method. + /// The arguments are presented in the same order they appear in + /// the associated methods with one exception: + /// the first argument is the name of the virtual method being implemented. + /// +#else /// /// This class implements a SQLite function using a . /// All the virtual methods of the class are - /// implemented using calls to the - /// method. The arguments are presented in the same order they appear in + /// implemented using calls to the , + /// , , + /// and strongly typed delegate types. + /// The arguments are presented in the same order they appear in /// the associated methods with one exception: /// the first argument is the name of the virtual method being implemented. /// +#endif public class SQLiteDelegateFunction : SQLiteFunction { #region Private Constants /// /// This error message is used by the overridden virtual methods when @@ -1504,12 +1520,16 @@ { return invokeDelegate.Invoke("Invoke", args); /* throw */ } else { +#if !PLATFORM_COMPACTFRAMEWORK return callback1.DynamicInvoke( GetInvokeArgs(args, false)); /* throw */ +#else + throw new NotImplementedException(); +#endif } } ///////////////////////////////////////////////////////////////////////// @@ -1550,17 +1570,21 @@ stepDelegate.Invoke( "Step", args, stepNumber, ref contextData); /* throw */ } else { +#if !PLATFORM_COMPACTFRAMEWORK object[] newArgs = GetStepArgs( args, stepNumber, contextData, false); /* IGNORED */ callback1.DynamicInvoke(newArgs); /* throw */ UpdateStepArgs(newArgs, ref contextData, false); +#else + throw new NotImplementedException(); +#endif } } ///////////////////////////////////////////////////////////////////////// @@ -1594,12 +1618,16 @@ { return finalDelegate.Invoke("Final", contextData); /* throw */ } else { +#if !PLATFORM_COMPACTFRAMEWORK return callback1.DynamicInvoke(GetFinalArgs( contextData, false)); /* throw */ +#else + throw new NotImplementedException(); +#endif } } ///////////////////////////////////////////////////////////////////////// @@ -1642,10 +1670,11 @@ return compareDelegate.Invoke( "Compare", param1, param2); /* throw */ } else { +#if !PLATFORM_COMPACTFRAMEWORK object result = callback1.DynamicInvoke(GetCompareArgs( param1, param2, false)); /* throw */ if (result is int) return (int)result; @@ -1652,10 +1681,13 @@ throw new InvalidOperationException( UnsafeNativeMethods.StringFormat( CultureInfo.CurrentCulture, ResultInt32Error, "Compare")); +#else + throw new NotImplementedException(); +#endif } } #endregion }