将EdmType转换为JsonSchemaType
本文关键字:JsonSchemaType 转换 EdmType | 更新日期: 2023-09-27 18:14:19
我正在用T4为ASP生成c#代码。. NET Web API项目…我需要一种简单的方法将EdmType转换为JsonSchemaType。
谢谢!
时间过得真快,我最后写了一个开关,直到我找到一个更好的解决方案…
public static class TypeMapper
{
public static JsonSchemaType Convert(EdmType edmType)
{
switch (edmType.BuiltInTypeKind )
{
case BuiltInTypeKind.EnumType:
return JsonSchemaType.String;
case BuiltInTypeKind.ComplexType:
return JsonSchemaType.Object;
case BuiltInTypeKind.PrimitiveType:
return GetPrimitiveType(edmType);
default:
return JsonSchemaType.Null;
}
}
private static JsonSchemaType GetPrimitiveType(EdmType edmType)
{
switch (edmType.Name)
{
case "String":
case "Guid":
case "DateTime":
return JsonSchemaType.String;
case "Int32":
return JsonSchemaType.Integer;
case "Single":
case "Double":
return JsonSchemaType.Float;
default:
return JsonSchemaType.Null;
}
}
}