private void HandleMethodCall(MethodCallExpression methodExpression, int argumentNumber) { if (! IsBindingMethod(methodExpression.Method)) { HandleStandardParameter(argumentNumber); return; } var action = (Action<FunctionParameterMapping>)((LambdaExpression)methodExpression.Arguments[0]).Compile(); var mapping = new FunctionParameterMapping(ParameterAtPosition(argumentNumber)); parameters.Add(mapping); action(mapping); return; }
private void HandleMethodCall(MethodCallExpression methodExpression, int argumentNumber) { if (!IsBindingMethod(methodExpression.Method)) { HandleStandardParameter(argumentNumber); return; } var action = (Action <FunctionParameterMapping>)((LambdaExpression)methodExpression.Arguments[0]).Compile(); var mapping = new FunctionParameterMapping(ParameterAtPosition(argumentNumber)); parameters.Add(mapping); action(mapping); return; }
private static void SetCUDFunctionParametersScalarMapping(TypeBase entityType, XElement functionMappingElement, CUDFunctionParametersMapping cudFunctionParametersMapping, ICSharpCode.Data.EDMDesigner.Core.EDMObjects.SSDL.Function.Function ssdlFunction) { foreach (var scalarPropertyElement in functionMappingElement.Elements(XName.Get("ScalarProperty", mslNamespace.NamespaceName))) { var scalarProperty = entityType.AllScalarProperties.GetByName(scalarPropertyElement.Attribute("Name").Value); var parameter = ssdlFunction.Parameters.GetByName(scalarPropertyElement.Attribute("ParameterName").Value); var versionAttribute = scalarPropertyElement.Attribute("Version"); var functionParameterMapping = new FunctionParameterMapping { SSDLFunctionParameter = parameter }; if (versionAttribute != null) { functionParameterMapping.Version = versionAttribute.Value.ToLower() == "current" ? FunctionParameterVersion.Current : FunctionParameterVersion.Original; } cudFunctionParametersMapping[scalarProperty] = functionParameterMapping; } }
public Result(MethodInfo method, FunctionParameterMapping[] parameters) { Method = method; Parameters = parameters; }