diff --git a/modules/docs/src/Volo.Docs.Web/Areas/Documents/TagHelpers/TreeTagHelper.cs b/modules/docs/src/Volo.Docs.Web/Areas/Documents/TagHelpers/TreeTagHelper.cs
index 2e8ec8bde0..bcf22f441e 100644
--- a/modules/docs/src/Volo.Docs.Web/Areas/Documents/TagHelpers/TreeTagHelper.cs
+++ b/modules/docs/src/Volo.Docs.Web/Areas/Documents/TagHelpers/TreeTagHelper.cs
@@ -2,6 +2,8 @@
using System.Linq;
using System.Text;
using Microsoft.AspNetCore.Razor.TagHelpers;
+using Microsoft.Extensions.Configuration;
+using Volo.Abp.Configuration;
using Volo.Docs.Documents;
using Volo.Docs.Utils;
@@ -12,6 +14,8 @@ namespace Volo.Docs.Areas.Documents.TagHelpers
[HtmlTargetElement("ul", Attributes = "root-node")]
public class TreeTagHelper : TagHelper
{
+ private readonly IConfigurationRoot _configuration;
+
private const string LiItemTemplateWithLink = @"
{2}{3}";
private const string ListItemAnchor = @"{2}";
@@ -38,6 +42,11 @@ namespace Volo.Docs.Areas.Documents.TagHelpers
[HtmlAttributeName("language")]
public string LanguageCode { get; set; }
+ public TreeTagHelper(IConfigurationAccessor configurationAccessor)
+ {
+ _configuration = configurationAccessor.Configuration;
+ }
+
public override void Process(TagHelperContext context, TagHelperOutput output)
{
var content = new StringBuilder();
@@ -134,7 +143,9 @@ namespace Volo.Docs.Areas.Documents.TagHelpers
return "javascript:;";
}
- return "/documents/" + LanguageCode + "/" + ProjectName + "/" + Version + "/" + pathWithoutFileExtension;
+ var prefix = Convert.ToBoolean(_configuration["IncludeDocumentPrefixInUrl"]) ? "documents/" : "";
+
+ return "/" + prefix + LanguageCode + "/" + ProjectName + "/" + Version + "/" + pathWithoutFileExtension;
}
private string RemoveFileExtensionFromPath(string path)
diff --git a/modules/docs/src/Volo.Docs.Web/Pages/Documents/Project/Index.cshtml.cs b/modules/docs/src/Volo.Docs.Web/Pages/Documents/Project/Index.cshtml.cs
index 4b370c8140..d7de812579 100644
--- a/modules/docs/src/Volo.Docs.Web/Pages/Documents/Project/Index.cshtml.cs
+++ b/modules/docs/src/Volo.Docs.Web/Pages/Documents/Project/Index.cshtml.cs
@@ -4,7 +4,9 @@ using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.Rendering;
+using Microsoft.Extensions.Configuration;
using Volo.Abp.AspNetCore.Mvc.UI.RazorPages;
+using Volo.Abp.Configuration;
using Volo.Abp.Localization;
using Volo.Docs.Documents;
using Volo.Docs.HtmlConverting;
@@ -52,15 +54,18 @@ namespace Volo.Docs.Pages.Documents.Project
private readonly IDocumentAppService _documentAppService;
private readonly IDocumentToHtmlConverterFactory _documentToHtmlConverterFactory;
private readonly IProjectAppService _projectAppService;
+ private readonly IConfigurationRoot _configuration;
public IndexModel(
IDocumentAppService documentAppService,
IDocumentToHtmlConverterFactory documentToHtmlConverterFactory,
- IProjectAppService projectAppService)
+ IProjectAppService projectAppService,
+ IConfigurationAccessor configurationAccessor)
{
_documentAppService = documentAppService;
_documentToHtmlConverterFactory = documentToHtmlConverterFactory;
_projectAppService = projectAppService;
+ _configuration = configurationAccessor.Configuration;
}
public async Task OnGetAsync()
@@ -341,7 +346,8 @@ namespace Volo.Docs.Pages.Documents.Project
private void AddLanguageCodePrefixToLinks()
{
- Document.Content = Document.Content.Replace("href=\"/documents", "href=\"/documents/" + LanguageCode);
+ var prefix = Convert.ToBoolean(_configuration["IncludeDocumentPrefixInUrl"]) ? "documents/" : "";
+ Document.Content = Document.Content.Replace("href=\"/documents", "href=\"/" + prefix + LanguageCode);
}
}
}
\ No newline at end of file