Visual studio 2015 在何处复制Visual Studio要找到的Resharper外部注释XML文件

Visual studio 2015 在何处复制Visual Studio要找到的Resharper外部注释XML文件,visual-studio-2015,resharper,resharper-9.1,Visual Studio 2015,Resharper,Resharper 9.1,我已经为我的一个库创建了一个XML注释文件,并希望使其可用于我的所有项目,而无需将其复制到每个项目二进制文件夹中 就我所读到的内容而言,可以通过将其复制到Resharper安装文件夹中来完成,但我尝试了一些地方,但没有成功 我已将其复制到以下文件夹中: C:\Users\myuser\AppData\Local\JetBrains\Installations\ReSharperPlatformVs14\ExternalAnnotations\MyCompany C:\Users\myuser\

我已经为我的一个库创建了一个XML注释文件,并希望使其可用于我的所有项目,而无需将其复制到每个项目二进制文件夹中

就我所读到的内容而言,可以通过将其复制到Resharper安装文件夹中来完成,但我尝试了一些地方,但没有成功

我已将其复制到以下文件夹中:

C:\Users\myuser\AppData\Local\JetBrains\Installations\ReSharperPlatformVs14\ExternalAnnotations\MyCompany

C:\Users\myuser\AppData\Local\JetBrains\ReSharper\vAny\vs14.0\Bin\ExternalAnnotations
xml文件与注释的dll名称完全相同,但扩展名为xml。内容如下:

<assembly name="Company.Tools.Libs.Logging">
  <member name="M:Company.Tools.Libs.Logging.Interfaces.IBasicLogger.WriteDebug(System.String,System.Object[])">
    <attribute ctor="M:JetBrains.Annotations.StringFormatMethodAttribute.#ctor(System.String)" />
    <argument>"format"</argument>
  </member>
  <member name="M:Company.Tools.Libs.Logging.Interfaces.IBasicLogger.WriteInfo(System.String,System.Object[])">
    <attribute ctor="M:JetBrains.Annotations.StringFormatMethodAttribute.#ctor(System.String)" />
    <argument>"format"</argument>
  </member>
  <member name="M:Company.Tools.Libs.Logging.Interfaces.IBasicLogger.WriteWarning(System.String,System.Object[])">
    <attribute ctor="M:JetBrains.Annotations.StringFormatMethodAttribute.#ctor(System.String)" />
    <argument>"format"</argument>
  </member>
  <member name="M:Company.Tools.Libs.Logging.Interfaces.IBasicLogger.WriteError(System.String,System.Object[])">
    <attribute ctor="M:JetBrains.Annotations.StringFormatMethodAttribute.#ctor(System.String)" />
    <argument>"format"</argument>
  </member>
  <member name="M:Company.Tools.Libs.Logging.Interfaces.IBasicLogger.WriteFatal(System.String,System.Object[])">
    <attribute ctor="M:JetBrains.Annotations.StringFormatMethodAttribute.#ctor(System.String)" />
    <argument>"format"</argument>
  </member>
</assembly>

“格式”
“格式”
“格式”
“格式”
“格式”
我错过了什么

更新:

正如@citizenmart所说,我的xml是错误的,参数节点需要嵌套在attribute元素中。我用一个简单的项目来实现这一点,使问题得以解决,但这是通过在与dll相同的文件夹中创建外部注释并使用.ExternalAnnotation前缀实现的

我仍在试图找出在我的机器上复制它的位置,这样它就可以被Resharper拾取,而不必沿着dll分发

更新2:


在与@citizenmart讨论之后,我决定将注释随dll一起发送。他有一个很好的观点,将它添加到Resharper的安装目录中会使它们在每个新安装中消失,再加上它不是一个非常直观的地方。此外,我还无法从那里获取VS以获取注释。

如果我没有记错,我认为它需要位于
ExternalAnnotations
的子文件夹中。在提取解决方案之前,您还需要关闭并重新打开它

您也可以在.dll旁边发送文件,只要它以
.ExternalAnnotations.xml
结尾,例如
foo.dll
需要
foo.ExternalAnnotations.dll

或者,您可以在扩展中发布注释。这被打包为一个带有自定义文件布局的nuget包。您可以查看community extensions项目中的示例(如果您的程序集是公共程序集,您甚至可能希望添加请求!)

但是,这里显示的示例XML是不正确的,
参数
元素必须是
属性
元素的子元素。它告诉ReSharper如何构建一个应该应用的参数,
ctor
属性为ReSharper提供构造函数(和类),然后我们需要将参数传递给该构造函数,因此每个
参数
元素都需要是
属性
元素的子元素。换言之:


格式

在“C:\Users\myUser\AppData\Local\JetBrains\ReSharper\vAny\vs14.0\Bin\ExternalAnnotations\Company”上尝试,但未成功(随后关闭和打开VS)。扩展选项很有趣,但我只想将文件复制到一个共享文件夹,并被所有解决方案接收。当这个xml与dll并排时,您是否让它工作?您可能想尝试这样做,并查看参数-我认为您希望它不被引用,因此
格式
。甚至不在我的项目引用的dll所在的同一文件夹中进行复制似乎都有效。我将其重命名为:“Company.Tools.Libs.Logging.ExternalAnnotations.xml”,而dll名为:“Company.Tools.Libs.Logging.dll”。参数上的引号是由我用来生成注释文件的ReSharper internal tools()生成的。在复制解决方案后,您是否重新打开了它?如果你能把程序集和xml发给我,我会看一看(马特·埃利斯在jet brains,很高兴签署NDAs)。但是从表面上看,一切看起来都很好,而且应该会起作用。谢谢@citizenmart。我无法向您发送实际的程序集,但我将尝试创建一个新的类似程序集并发送给您。最近工作很忙,所以可能需要一段时间