private static void AddImports(CodeTypeDeclaration classDef, CodeCompileUnit unit) { CodeMemberField field; CodeMemberMethod method; foreach (CodeTypeMember member in classDef.Members) { if (member is CodeMemberField) { field = (CodeMemberField)member; if (ImportLookup.ContainsKey(field.Type.BaseType) == true) { Builder.AddImport(ImportLookup[field.Type.BaseType], unit); } } else if (member is CodeMemberMethod) { method = (CodeMemberMethod)member; if (ImportLookup.ContainsKey(method.ReturnType.BaseType) == true) { Builder.AddImport(ImportLookup[method.ReturnType.BaseType], unit); } foreach (CodeParameterDeclarationExpression parameter in method.Parameters) { if (ImportLookup.ContainsKey(parameter.Type.BaseType) == true) { Builder.AddImport(ImportLookup[parameter.Type.BaseType], unit); } } } } }