private void ExplicitVisit_FunctionCall_DATEFROMPARTS(FunctionCall node) { if (node.Parameters.Count != 3) { throw new NotSupportedException(node.AsText()); } var invoke_ISNULL = new cs.CodeMethodInvokeExpression(new cs.CodeMethodReferenceExpression() { MethodName = "DATEFROMPARTS", TargetObject = new cs.CodeTypeReferenceExpression(new cs.CodeTypeReference("KnownSqlFunction")) }); var prm_1 = TryBuildFromNode(node.Parameters[0], ref lastHasError, ref lastError); var prm_2 = TryBuildFromNode(node.Parameters[1], ref lastHasError, ref lastError); var prm_3 = TryBuildFromNode(node.Parameters[2], ref lastHasError, ref lastError); if (!lastHasError) { invoke_ISNULL.Parameters.Add(prm_1); invoke_ISNULL.Parameters.Add(prm_2); invoke_ISNULL.Parameters.Add(prm_3); lastExpression = invoke_ISNULL; } }
private void ExplicitVisit_FunctionCall_OBJECT_NAME(FunctionCall node) { if (node.Parameters.Count != 1) { throw new NotSupportedException(node.AsText()); } var invoke_ISNULL = new cs.CodeMethodInvokeExpression(new cs.CodeMethodReferenceExpression() { MethodName = "OBJECT_NAME", TargetObject = new cs.CodeTypeReferenceExpression(new cs.CodeTypeReference("KnownSqlFunction")) }); var prm_string_expression = TryBuildFromNode(node.Parameters[0], ref lastHasError, ref lastError); if (!lastHasError) { invoke_ISNULL.Parameters.Add(prm_string_expression); } if (!lastHasError) { lastExpression = invoke_ISNULL; } }
private void ExplicitVisit_FunctionCall_SUBSTRING(FunctionCall node) { if (node.Parameters.Count != 3) { throw new NotSupportedException(node.AsText()); } var invoke_ISNULL = new cs.CodeMethodInvokeExpression(new cs.CodeMethodReferenceExpression() { MethodName = "SUBSTRING", TargetObject = new cs.CodeTypeReferenceExpression(new cs.CodeTypeReference("KnownSqlFunction")) }); var prm_expression = TryBuildFromNode(node.Parameters[0], ref lastHasError, ref lastError); var prm_starting_position = TryBuildFromNode(node.Parameters[1], ref lastHasError, ref lastError); var prm_length = TryBuildFromNode(node.Parameters[2], ref lastHasError, ref lastError); if (!lastHasError) { invoke_ISNULL.Parameters.Add(prm_expression); } if (!lastHasError) { invoke_ISNULL.Parameters.Add(prm_starting_position); } if (!lastHasError) { invoke_ISNULL.Parameters.Add(prm_length); } lastExpression = invoke_ISNULL; }
private void ExplicitVisit_FunctionCall_DATEPART(FunctionCall node) { if (node.Parameters.Count != 2) { throw new NotSupportedException(node.AsText()); } var invoke_ISNULL = new cs.CodeMethodInvokeExpression(new cs.CodeMethodReferenceExpression() { MethodName = "DATEPART", TargetObject = new cs.CodeTypeReferenceExpression(new cs.CodeTypeReference("KnownSqlFunction")) }); var prm_interval = TryBuildFromNode(node.Parameters[0], ref lastHasError, ref lastError); if (!lastHasError) { invoke_ISNULL.Parameters.Add(prm_interval); } var prm_datetimeoffset = TryBuildFromNode(node.Parameters[1], ref lastHasError, ref lastError); if (!lastHasError) { invoke_ISNULL.Parameters.Add(prm_datetimeoffset); } if (lastHasError) { } else { lastExpression = invoke_ISNULL; } }
private void ExplicitVisit_FunctionCall_CONVERT(FunctionCall node) { if (node.Parameters.Count != 2) { throw new NotSupportedException(node.AsText()); } var invoke_ISNULL = new cs.CodeMethodInvokeExpression(new cs.CodeMethodReferenceExpression() { MethodName = "CONVERT", TargetObject = new cs.CodeTypeReferenceExpression(new cs.CodeTypeReference("KnownSqlFunction")) }); var prm_object_name = TryBuildFromNode(node.Parameters[0], ref lastHasError, ref lastError); var prm_object_part = TryBuildFromNode(node.Parameters[1], ref lastHasError, ref lastError); if (!lastHasError) { invoke_ISNULL.Parameters.Add(prm_object_name); invoke_ISNULL.Parameters.Add(prm_object_part); lastExpression = invoke_ISNULL; } }