gpt4 book ai didi

asp.net-mvc - Web API 帮助页面未加载文档 XML

转载 作者:行者123 更新时间:2023-12-01 10:34:54 26 4
gpt4 key购买 nike

我正在尝试设置 ASP.NET Help Pages在现有的 MVC 项目中运行,尽管指向同一解决方案中 Web API 项目的文档文件。约定在它正在记录的 Web API 中运行帮助页面,但在这种情况下,我希望它在同级 MVC 项目中。

Web API 项目将其文档 XML 文件输出到 MVC 项目内的文件夹中。

我已经安装了Microsoft.AspNet.WebApi.HelpPage NuGet package在 MVC 项目中。这将创建一个类 \Areas\HelpPage\App_Start\HelpPageConfig.cs , 并且在这个类的 Register方法我通过了XmlDocumentationProvider Web API 文档文件的路径。

但是当我加载页面时,除了标题和占位符描述之外,它是空的。

在调试 HelpController.Index方法,我可以在返回的 IApiExplorer 中看到该_apiDescriptions是空的。

Screenshot from Help Pages running inside MVC project

但是,如果我将帮助页面直接安装到 Web API 项目并调试相同的方法,我可以看到 _apiDescriptions现在在场。

Screenshot from Help Pages running inside Web API project

谁能解释 Web API 项目正在做什么或已经配置了 MVC 项目没有做什么或没有配置?

最佳答案

自己设置一下,我想我遇到了类似的问题,如果我正在阅读你所说的正确的话。

尝试以下操作:

  • 转到 Areas\HelpPage\App_Start\HelpPageConfig.cs。在第 36 行附近,您需要确保取消注释该行,如下所示:


  • //// Uncomment the following to use the documentation from XML documentation file.
    config.SetDocumentationProvider(new XmlDocumentationProvider(HttpContext.Current.Server.MapPath("~/App_Data/ApiDocumentation.xml")));

    并确保路径正确。我碰巧将我的 xml 文件放在 App_Data 目录中。
  • 转到项目=>属性=>构建。在输出下,确保选中“XML 文档文件”框,并将其指向 App_Data\ApiDocumentation.XML(假设你把它放在我上面做的同一个地方。
  • 如果我没记错的话,我必须确保将 .xml 文件添加到项目中——当我尝试将其发布到工作中的测试服务器时遇到了一些问题,它说找不到该文件。构建后,只需转到 App_Data,右键单击文件夹,然后添加现有项目。导航到文件系统中的 App_Data 并选择 xml 文件。

  • 这有望解决您的问题!

    关于asp.net-mvc - Web API 帮助页面未加载文档 XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37458716/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com