diff --git a/dir.targets b/dir.targets
index b54d251da9..90dcdf4a56 100644
--- a/dir.targets
+++ b/dir.targets
@@ -110,14 +110,24 @@
-
+
<_GenApiExePath>$(ToolsDir)GenApi.exe
<_RefSourceFileOutputPath>$(MSBuildProjectDirectory)/../ref/$(AssemblyName).cs
- <_DefaultDocIdsTxtPath>$(MSBuildThisFileDirectory)tools-local/DefaultGenApiDocIds.txt
+ <_ExcludeAPIList>$(MSBuildThisFileDirectory)tools-local/DefaultGenApiDocIds.txt
<_LicenseHeaderTxtPath>$(MSBuildThisFileDirectory)tools-local/LicenseHeader.txt
-
+
+
+ <_GenAPICmd>$(DotnetToolCommand) $(_GenApiExePath)
+ <_GenAPICmd>$(_GenAPICmd) -assembly:$(TargetPath)
+ <_GenAPICmd>$(_GenAPICmd) -libPath:$(RefPath)
+ <_GenAPICmd>$(_GenAPICmd) -out:$(_RefSourceFileOutputPath)
+ <_GenAPICmd>$(_GenAPICmd) -excludeAttributesList:$(_ExcludeAPIList)
+ <_GenAPICmd>$(_GenAPICmd) -headerFile:$(_LicenseHeaderTxtPath)
+
+
+
diff --git a/tools-local/DefaultGenApiDocIds.txt b/tools-local/DefaultGenApiDocIds.txt
index 516a48ae2d..e2c93f8733 100644
--- a/tools-local/DefaultGenApiDocIds.txt
+++ b/tools-local/DefaultGenApiDocIds.txt
@@ -1,6 +1,44 @@
// These attributes should be excluded from reference assemblies.
+T:System.ComponentModel.DesignerAttribute
+T:System.ComponentModel.Design.Serialization.DesignerSerializerAttribute
+T:System.ComponentModel.Design.Serialization.RootDesignerSerializerAttribute
+T:System.ComponentModel.EditorAttribute
+T:System.ComponentModel.TypeConverterAttribute
+T:System.Configuration.ConfigurationPropertyAttribute
+T:System.Diagnostics.CodeAnalysis.SuppressMessageAttribute
T:System.Diagnostics.DebuggerBrowsableAttribute
T:System.Diagnostics.DebuggerDisplayAttribute
-T:System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverageAttribute
-T:System.Runtime.CompilerServices.CompilerGeneratedAttribute
\ No newline at end of file
+T:System.Diagnostics.DebuggerHiddenAttribute
+T:System.Diagnostics.DebuggerNonUserCodeAttribute
+T:System.Diagnostics.DebuggerStepThroughAttribute
+T:System.Diagnostics.DebuggerTypeProxyAttribute
+T:System.Diagnostics.MonitoringDescriptionAttribute
+T:System.IO.IODescriptionAttribut
+T:System.Runtime.CompilerServices.AsyncStateMachineAttribute
+T:System.Runtime.CompilerServices.CompilerGeneratedAttribute
+T:System.Runtime.CompilerServices.IteratorStateMachineAttribute
+T:System.Runtime.CompilerServices.TypeForwardedFromAttribute
+T:System.Runtime.CompilerServices.MethodImpl
+T:System.Runtime.ConstrainedExecution.ReliabilityContractAttribute
+T:System.Runtime.InteropServices.ClassInterfaceAttribute
+T:System.Runtime.InteropServices.ComDefaultInterfaceAttribute
+T:System.Runtime.InteropServices.ComVisibleAttribute
+T:System.Runtime.InteropServices.GuidAttribute
+T:System.Runtime.InteropServices.InterfaceTypeAttribute
+T:System.Runtime.Serialization.KnownTypeAttribute
+T:System.Security.Permissions.EnvironmentPermissionAttribute
+T:System.Security.Permissions.FileIOPermissionAttribute
+T:System.Security.Permissions.HostProtectionAttribute
+T:System.Security.Permissions.IsolatedStorageFilePermissionAttribute
+T:System.Security.Permissions.PermissionSetAttribute
+T:System.Security.Permissions.ReflectionPermissionAttribute
+T:System.Security.Permissions.SecurityPermissionAttribute
+T:System.Security.Permissions.StrongNameIdentityPermissionAttribute
+T:System.Security.SecurityCriticalAttribute
+T:System.Security.SecuritySafeCriticalAttribute
+T:System.Security.SuppressUnmanagedCodeSecurityAttribute
+T:System.Xml.Serialization.XmlAttributeAttribute
+T:System.Xml.Serialization.XmlEnumAttribute
+T:System.Xml.Serialization.XmlIgnoreAttribute
+T:System.Xml.Serialization.XmlRootAttribute
\ No newline at end of file