AspNetCoreOData icon indicating copy to clipboard operation
AspNetCoreOData copied to clipboard

Fixes #1250: Enable query options on untyped properties

Open xuzhg opened this issue 1 year ago • 1 comments

Treat the System.Object as EdmUntypedStructuredType Treat EdmUntypedStructuredType as System.Object Add test to cover the $filter, $select on untyped properties Not covered the $orderby on untyped properties

xuzhg avatar Jul 01 '24 18:07 xuzhg

@xuzhg tests are failing:

[xUnit.net 00:00:04.5725114]     Microsoft.AspNetCore.OData.Tests.Formatter.Serialization.ODataDeltaResourceSetSerializerTests.WriteObjectAsync_Calls_WriteObjectInlineAsync [FAIL]
  Failed Microsoft.AspNetCore.OData.Tests.Formatter.Serialization.ODataDeltaResourceSetSerializerTests.WriteObjectAsync_Calls_WriteObjectInlineAsync [4 ms]
  Error Message:
   System.Runtime.Serialization.SerializationException : ODataDeltaResourceSetSerializer cannot write an object of type 'Edm.Untyped'.
  Stack Trace:
     at Microsoft.AspNetCore.OData.Formatter.Serialization.ODataDeltaResourceSetSerializer.GetResourceType(IEdmTypeReference feedType) in D:\a\_work\1\s\src\Microsoft.AspNetCore.OData\Formatter\Serialization\ODataDeltaResourceSetSerializer.cs:line 415
   at Microsoft.AspNetCore.OData.Formatter.Serialization.ODataDeltaResourceSetSerializer.WriteObjectAsync(Object graph, Type type, ODataMessageWriter messageWriter, ODataSerializerContext writeContext) in D:\a\_work\1\s\src\Microsoft.AspNetCore.OData\Formatter\Serialization\ODataDeltaResourceSetSerializer.cs:line 67
   at Microsoft.AspNetCore.OData.Tests.Formatter.Serialization.ODataDeltaResourceSetSerializerTests.WriteObjectAsync_Calls_WriteObjectInlineAsync() in D:\a\_work\1\s\test\Microsoft.AspNetCore.OData.Tests\Formatter\Serialization\ODataDeltaResourceSetSerializerTests.cs:line 152
--- End of stack trace from previous location where exception was thrown ---
info: Microsoft.Hosting.Lifetime[0]
      Application started. Press Ctrl+C to shut down.
info: Microsoft.Hosting.Lifetime[0]
      Hosting environment: Production
info: Microsoft.Hosting.Lifetime[0]

habbes avatar Sep 25 '24 05:09 habbes