2016-04-29 4 views
1

Kendo FilterEin binärer Operator mit inkompatiblen Typen wurde erkannt. Gefundene Operandentypen 'Edm.Guid' und 'Edm.String' für den Operator 'Equal'. OData 2.2

if ($.trim(DepartmentId)) { $filter.push({ field: "DepartmentId", operator: "eq", value: DepartmentId }); } 

Modell

public System.Guid DepartmentId { get; set; } 

Methode

[Queryable] 
    public IQueryable<Employee> Get(ODataQueryOptions opts) 
    { 
     EmployeeService.HrEmployeeServiceFacadeClient emp = new EmployeeService.HrEmployeeServiceFacadeClient(); 
     var response = emp.GetAll(); 
     List<Employee> result = JsonConvert.DeserializeObject<List<Employee>>(response.Result); 
     var resultString = result.AsQueryable(); 

     return resultString; 
    } 

Ich OData 2,2

Sein zeigt Fehler

Mit

Ein binärer Operator mit inkompatiblen Typen wurde erkannt. Gefundene Operandentypen 'Edm.Guid' und 'Edm.String' für den Operator 'Equal'.

Antwort

4

In OData v2 muss eine literale GUID als guid'dddddddd-dddd-dddd-dddd-dddddddddddd' serialisiert werden, wobei jede d eine hexadezimale Ziffer darstellt.

+0

"Ungültige 'wo' Bedingung. Ein Entitätsmitglied ruft eine ungültige Eigenschaft oder Methode auf.", –

+0

/AccountSet? $ Filter = AccountId eq guid'03a0a47b-e3a2-e311-9402-00155d104c22 ' –

Verwandte Themen