diff --git a/modules/docs/src/Volo.Docs.Web/Pages/Documents/Index.cshtml b/modules/docs/src/Volo.Docs.Web/Pages/Documents/Index.cshtml
index b856fff614..57a26bdbcb 100644
--- a/modules/docs/src/Volo.Docs.Web/Pages/Documents/Index.cshtml
+++ b/modules/docs/src/Volo.Docs.Web/Pages/Documents/Index.cshtml
@@ -31,7 +31,7 @@
{
diff --git a/modules/docs/src/Volo.Docs.Web/Pages/Documents/Index.cshtml.cs b/modules/docs/src/Volo.Docs.Web/Pages/Documents/Index.cshtml.cs
index 59f66f7b82..48f3703965 100644
--- a/modules/docs/src/Volo.Docs.Web/Pages/Documents/Index.cshtml.cs
+++ b/modules/docs/src/Volo.Docs.Web/Pages/Documents/Index.cshtml.cs
@@ -43,5 +43,24 @@ namespace Volo.Docs.Pages.Documents
return Page();
}
+
+ public string GetUrlForProject(ProjectDto project = null, string language = "en", string version = null)
+ {
+ var routeValues = new Dictionary {
+ { nameof(Project.IndexModel.Version), version ?? DocsAppConsts.Latest }
+ };
+
+ if (!_uiOptions.SingleProjectMode.Enable)
+ {
+ routeValues.Add(nameof(Project.IndexModel.ProjectName), project?.ShortName);
+ }
+
+ if(_uiOptions.MultiLanguageMode)
+ {
+ routeValues.Add(nameof(Project.IndexModel.LanguageCode), language);
+ }
+
+ return Url.Page("/Documents/Project/Index", routeValues);
+ }
}
}