我有一个习惯ODataResourceSerializer
,它在某些情况下会为资源添加新属性,效果很好。
我正在尝试添加一个新的简单 int[] 属性
该资源是在运行时注册的动态资源,在模型上没有这些属性。
这段代码
case TypeX tx:
propertiesToReturn.Add(new ODataProperty()
{
Name = "TypeX",
Value = new ODataCollectionValue()
{
Items = new int[] {1,2,3}
}
});
当资源被发送到ODataJsonLightPropertySerializer.WriteCollectionProperty
模型无法解析名为“System.Int32[]”的类型。当模型可用时,每个类型名称都必须解析为有效类型。
并尝试将值直接添加到 odata 属性
new ODataProperty()
{
Value = new int[] { 1, 2, 3 }
}
我继续添加
ODataPrimitiveValue 被实例化为“System.Int32[]”类型的值。ODataPrimitiveValue 只能包装可以表示为原始 EDM 类型的值
我尝试将 int[] 添加到模型构建器 我尝试将类型添加到 ODataCollectionValue