引用javascript嵌入资源,但intellisense没有'我什么也不展示

Referencing javascript embedded resource but intellisense doesn't show anything

本文关键字:什么 嵌入资源 javascript 没有 intellisense 引用      更新时间:2023-09-26

我被卡住了我试图引用一个嵌入在第三方程序集中的javascript文件,但它似乎不起作用:

我所做的:

  1. 我有一个文件夹RefAssemblies,这个带有嵌入javascript文件的库DLL位于该文件夹中
  2. 我添加了一个项目引用并指向此库程序集
  3. 我在我的javascript文件中添加了一行,我希望引用在其中工作,即

    /// <reference name="ScriptName.js" assembly="AssemblyName" />
    

    我尝试仅使用名称命名程序集,还使用完整的程序集名称,包括名称、版本、区域性和公钥标记。没有区别。

  4. 将我的库程序集添加到system.web'assemblies内的项目的web.config中(AFAIK是您必须添加程序集并使其在应用程序中知名的部分),因此我应该能够访问它,而无需引用程序集,只需引用资源名称。没有区别

并且在进行任何更改后,我按下了Ctrl+Shift+J,因此Visual studio刷新了Javascript智能感知缓存。在更改web项目的web.config后,我甚至卸载了,并重新加载了我的web项目。只是为了让Visual Studio能够读取该文件并重新加载所有内容。

但仍然很不幸。。。而且我在General输出窗口中也没有得到任何Javascript Intellisense错误。。。

我一定错过了什么

附加说明
知道我正在Visual Studio 10.0.40219.1
中运行ReSharper 6.1.1000.82可能会有所帮助

之后我做的其他事情

  1. 已从我的计算机上卸载ReSharper
  2. 通过使用从命令提示符运行Visual Studio来重置它

    devenv /ResetSettings
    

    运气也不好。

你还有其他建议吗

我在嵌入式资源方面也遇到了一些奇怪的问题。不过,通过使用完全限定的资源名称,我已经设法使其正常工作。您可以使用ilspy打开程序集,然后选择Resources文件夹,然后显示所有资源的全名。

正如我所说,我在一个解决方案中做到了这一点,但在其他解决方案中却不起作用,我不知道为什么。。非工作解决方案具有不同的结构,其中不同的程序集位于不同的文件夹中,但我无法将其作为原因进行隔离。。

-编辑-

经过多次尝试和错误之后,使嵌入式javascript引用工作的关键似乎是为包含对bin而非bin'debug的引用的项目设置输出文件夹

据我所知,没有其他设置或程序集引用会影响嵌入的资源,只有具有引用的项目的输出文件夹。我猜javascript语言服务无法找到具有嵌入资源的程序集,除非它们在私有路径或gac中,但我还不知道这个binpath的确切设置位置。

我试过在项目本身和我认为实际的语言服务exe上设置它,但都没有用。

我在这里提出了一个连接问题:https://connect.microsoft.com/VisualStudio/feedback/details/770185/js-references-to-embedded-files-require-the-referencing-project-to-have-outputpath-bin