本文整理汇总了C#中IEdmType.GetType方法的典型用法代码示例。如果您正苦于以下问题:C# IEdmType.GetType方法的具体用法?C# IEdmType.GetType怎么用?C# IEdmType.GetType使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IEdmType
的用法示例。
在下文中一共展示了IEdmType.GetType方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: TranslateEdmTypeToClrType
//-----------------------------------------------------------------------------------------------------------------------------------------------------
private Type TranslateEdmTypeToClrType(IEdmModel model, IEdmType edmType)
{
var annotation = model.GetAnnotationValue<ClrTypeAnnotation>(edmType);
if ( annotation != null )
{
return annotation.ClrType;
}
var entityType = (edmType as IEdmEntityType);
if ( entityType != null )
{
return base.Context.Factory.FindDynamicType(new EdmEntityTypeKey(model, entityType));
}
var collectionType = (edmType as IEdmCollectionType);
if ( collectionType != null )
{
var elementClrType = TranslateEdmTypeToClrType(model, collectionType.ElementType.Definition);
return typeof (DataServiceCollection<>).MakeGenericType(elementClrType);
}
var primitiveType = (edmType as IEdmPrimitiveType);
if ( primitiveType != null )
{
return s_BuiltInTypesMapping[primitiveType];
}
throw new Exception("Could not determine CLR type for EDM type: " + edmType.FullTypeName() + " {" + edmType.GetType().Name + "}");
}