/// <summary> /// Gets an <see cref="ImportDefinition"/> for a <see cref="MemberInfo"/> instance using the provided <see cref="IImportConvention"/> instance. /// </summary> /// <param name="importConvention"><see cref="IImportConvention"/> instances that should be used to create the <see cref="ImportDefinition"/> instances.</param> /// <param name="member">The <see cref="MemberInfo"/> for which the <see cref="ImportDefinition"/> instances should be created.</param> /// <returns>An <see cref="ImportDefinition"/> instance.</returns> private ImportDefinition GetImportDefinition(IImportConvention importConvention, MemberInfo member) { return ReflectionModelServices.CreateImportDefinition( member.ToLazyMemberInfo(), this.ContractService.GetImportContractName(importConvention, member), this.ContractService.GetImportTypeIdentity(importConvention, member), importConvention.RequiredMetadata.Select(x => new KeyValuePair<string, Type>(x.Name, x.Type)), member.GetCardinality(importConvention.AllowDefaultValue), importConvention.Recomposable, importConvention.CreationPolicy, null); }