private static void AssertFieldMetadata(IMetadataApi metadataApi, Guid objectMetadataId) { IFieldMetadata fieldMetadata = metadataApi.GetField(objectMetadataId, "Name"); Assert.AreEqual("Name", fieldMetadata.Name); Assert.AreEqual(FieldType.String, fieldMetadata.Type); Assert.AreEqual(1, fieldMetadata.Ordinal); Assert.IsTrue(fieldMetadata.IsRequired); fieldMetadata = metadataApi.GetField(objectMetadataId, "Birthday"); Assert.AreEqual("Birthday", fieldMetadata.Name); Assert.AreEqual(FieldType.DateTime, fieldMetadata.Type); Assert.AreEqual(2, fieldMetadata.Ordinal); Assert.IsFalse(fieldMetadata.IsRequired); fieldMetadata = metadataApi.GetField(objectMetadataId, "Level"); Assert.AreEqual("Level", fieldMetadata.Name); Assert.AreEqual(FieldType.Integer, fieldMetadata.Type); Assert.AreEqual(3, fieldMetadata.Ordinal); Assert.IsTrue(fieldMetadata.IsRequired); fieldMetadata = metadataApi.GetField(objectMetadataId, "Salary"); Assert.AreEqual("Salary", fieldMetadata.Name); Assert.AreEqual(FieldType.Decimal, fieldMetadata.Type); Assert.AreEqual(4, fieldMetadata.Ordinal); Assert.IsTrue(fieldMetadata.IsRequired); fieldMetadata = metadataApi.GetField(objectMetadataId, "Position"); Assert.AreEqual("Position", fieldMetadata.Name); Assert.AreEqual(FieldType.Hierarchy, fieldMetadata.Type); Assert.AreEqual(5, fieldMetadata.Ordinal); Assert.IsTrue(fieldMetadata.IsRequired); HierarchyFieldMetadata hierarchyFieldMetadata = fieldMetadata as HierarchyFieldMetadata; Assert.AreEqual(1, hierarchyFieldMetadata.Node.Length); Assert.AreEqual("Director", hierarchyFieldMetadata.Node[0].Name); fieldMetadata = metadataApi.GetField(objectMetadataId, "HuKou"); Assert.AreEqual("HuKou", fieldMetadata.Name); Assert.AreEqual(FieldType.Enumeration, fieldMetadata.Type); Assert.AreEqual(6, fieldMetadata.Ordinal); Assert.IsFalse(fieldMetadata.IsRequired); IEnumerable<IFieldMetadata> allFieldMetadata = metadataApi.GetFields(objectMetadataId); Assert.AreEqual(6, allFieldMetadata.Count()); }