0

コードで次のエラーが表示されます。

属性 'sgfdhr_leavetype.new_employeeleavecalculation' の条件: 'System.Guid' 型の引数が必要ですが、'Microsoft.Xrm.Sdk.EntityReference' を受け取りました。

私のコードは以下の通りです:

public int Getleavetype(Entity LeaveManagement, IOrganizationService _orgService, CodeActivityContext Acontext)
        {
      QueryExpression GetLeavedetails = new QueryExpression();
      GetLeavedetails.EntityName = "sgfdhr_leavetype";
      GetLeavedetails.ColumnSet = new ColumnSet("new_type");
      GetLeavedetails.ColumnSet = new ColumnSet("new_availabledays");
      GetLeavedetails.Criteria.AddCondition("new_type", ConditionOperator.Equal, 1);
      GetLeavedetails.Criteria.AddCondition("new_employeeleavecalculation",    ConditionOperator.Equal,LeaveManagement["new_leavedetails"]);
            EntityCollection LeaveDetails = _orgService.RetrieveMultiple(GetLeavedetails);
            return (int)LeaveDetails[0]["new_availabledays"];
        }

「EntityCollection LeaveDetails = _orgService.RetrieveMultiple(GetLeavedetails);」でエラーを受け取りました。上記のコードのこの行。

ありがとう、

4

1 に答える 1

0

エラーは、次の条件があることは明らかです。

 GetLeavedetails.Criteria.AddCondition("new_employeeleavecalculation", ConditionOperator.Equal, LeaveManagement["new_leavedetails"]);

エラーは、それLeaveManagement["new_leavedetails"]EntityReference(ルックアップ)であり、Guid

Id条件内に配置する前後にフィールドをキャストできます。

EntityReference detailsRef = (EntityReference)LeaveManagement["new_leavedetails"];
GetLeavedetails.Criteria.AddCondition("new_employeeleavecalculation", ConditionOperator.Equal, detailsRef.Id);
于 2014-09-19T14:23:59.640 に答える