Pregunta

Me moví algunas variables en grupos, a mi flujo de trabajo.

Por desgracia, ahora las reglas fallan, he estado tratando de establecer el tipo, pero siguen dando este error.

  

'ifRequestComplete' Actividad   Error de validación: Propiedad   "Condición" tiene un valor no válido.   expresión de condición es válida. los   Nombre del tipo especificado ( "Request,   ApprovalWorkflow ") no puede ser   resuelto.

sin el 'ns0: CodeTypeReferenceExpression type = ".." />' consigo este error

  

'ifRequestComplete' Actividad   Error de validación: Propiedad   "Condición" tiene un valor no válido.   expresión de condición es válida. los   campo "gReq" en el tipo de   "ApprovalWorkflow.ApprovalFlow" hace   no existe o no es accesible.

La clase de solicitud se crea en el espacio de nombres ApprovalWorkflow en el mismo proyecto que el flujo de trabajo, también llamado ApprovalWorkflow.

namespace ApprovalWorkflow
{
    public class Request    {...}
}

El archivo contiene este .rules

    <RuleExpressionCondition Name="ifRequestComplete">
        <RuleExpressionCondition.Expression>
            <ns0:CodeBinaryOperatorExpression Operator="ValueEquality" xmlns:ns0="clr-namespace:System.CodeDom;Assembly=System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
                <ns0:CodeBinaryOperatorExpression.Left>
                    <ns0:CodeFieldReferenceExpression FieldName="StatusCode">
                        <ns0:CodeFieldReferenceExpression.TargetObject>
                            <ns0:CodeFieldReferenceExpression FieldName="gReq">
                                <ns0:CodeFieldReferenceExpression.TargetObject>
                                    <ns0:CodeTypeReferenceExpression Type="Request, ApprovalWorkflow" />
                                    <ns0:CodeThisReferenceExpression />
                                </ns0:CodeFieldReferenceExpression.TargetObject>
                            </ns0:CodeFieldReferenceExpression>
                        </ns0:CodeFieldReferenceExpression.TargetObject>
                    </ns0:CodeFieldReferenceExpression>
                </ns0:CodeBinaryOperatorExpression.Left>
                <ns0:CodeBinaryOperatorExpression.Right>
                    <ns0:CodePrimitiveExpression>
                        <ns0:CodePrimitiveExpression.Value>
                            <ns1:String xmlns:ns1="clr-namespace:System;Assembly=mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">COM</ns1:String>
                        </ns0:CodePrimitiveExpression.Value>
                    </ns0:CodePrimitiveExpression>
                </ns0:CodeBinaryOperatorExpression.Right>
            </ns0:CodeBinaryOperatorExpression>
        </RuleExpressionCondition.Expression>
    </RuleExpressionCondition>

He intentado varias formas diferentes de escribir el tipo de "Solicitud", "ApprovalWorkflow.Request", "ApprovalWorkflow.Request, ApprovalWorkflow", nada parece funcionar.

Por favor, ayuda.

¿Fue útil?

Solución

lo he descubierto, al modificar los objetos subyacentes cambiaron desde los campos a las propiedades y el archivo .rules resultante tenía que cambiar en consecuencia.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top