本文整理汇总了C#中IEdmTypeReference.GetDefinition方法的典型用法代码示例。如果您正苦于以下问题:C# IEdmTypeReference.GetDefinition方法的具体用法?C# IEdmTypeReference.GetDefinition怎么用?C# IEdmTypeReference.GetDefinition使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IEdmTypeReference
的用法示例。
在下文中一共展示了IEdmTypeReference.GetDefinition方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GetClrType
public static Type GetClrType(IEdmTypeReference edmTypeReference, IEdmModel edmModel, IAssembliesResolver assembliesResolver)
{
Contract.Requires(edmTypeReference != null);
Contract.Requires(edmModel != null);
Contract.Requires(assembliesResolver != null);
var primitiveClrType = BuiltInTypesMapping.Where(kvp => edmTypeReference.GetDefinition().IsEquivalentTo(kvp.Value) && (!edmTypeReference.IsNullable || IsNullable(kvp.Key))).Select(kvp => kvp.Key).FirstOrDefault();
if (primitiveClrType != null)
{
return primitiveClrType;
}
var edmType = edmTypeReference.GetDefinition();
Contract.Assume(edmType is IEdmSchemaType);
var clrType = GetClrType(edmType, edmModel, assembliesResolver);
if (clrType != null && clrType.IsEnum && edmTypeReference.IsNullable)
{
return clrType.ToNullable();
}
return clrType;
}