diff --git a/common.props b/common.props
index 6ce5cae828..ea1df61a0f 100644
--- a/common.props
+++ b/common.props
@@ -28,4 +28,9 @@
+
+
+
+
+
diff --git a/framework/src/Volo.Abp.AspNetCore.TestBase/Volo/Abp/AspNetCore/TestBase/DynamicProxying/AspNetCoreTestDynamicProxyHttpClientFactory.cs b/framework/src/Volo.Abp.AspNetCore.TestBase/Volo/Abp/AspNetCore/TestBase/DynamicProxying/AspNetCoreTestProxyHttpClientFactory.cs
similarity index 73%
rename from framework/src/Volo.Abp.AspNetCore.TestBase/Volo/Abp/AspNetCore/TestBase/DynamicProxying/AspNetCoreTestDynamicProxyHttpClientFactory.cs
rename to framework/src/Volo.Abp.AspNetCore.TestBase/Volo/Abp/AspNetCore/TestBase/DynamicProxying/AspNetCoreTestProxyHttpClientFactory.cs
index 71de80b018..682f8387f6 100644
--- a/framework/src/Volo.Abp.AspNetCore.TestBase/Volo/Abp/AspNetCore/TestBase/DynamicProxying/AspNetCoreTestDynamicProxyHttpClientFactory.cs
+++ b/framework/src/Volo.Abp.AspNetCore.TestBase/Volo/Abp/AspNetCore/TestBase/DynamicProxying/AspNetCoreTestProxyHttpClientFactory.cs
@@ -1,15 +1,17 @@
using System.Net.Http;
using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client;
using Volo.Abp.Http.Client.DynamicProxying;
+using Volo.Abp.Http.Client.Proxying;
namespace Volo.Abp.AspNetCore.TestBase.DynamicProxying
{
[Dependency(ReplaceServices = true)]
- public class AspNetCoreTestDynamicProxyHttpClientFactory : IDynamicProxyHttpClientFactory, ITransientDependency
+ public class AspNetCoreTestProxyHttpClientFactory : IProxyHttpClientFactory, ITransientDependency
{
private readonly ITestServerAccessor _testServerAccessor;
- public AspNetCoreTestDynamicProxyHttpClientFactory(
+ public AspNetCoreTestProxyHttpClientFactory(
ITestServerAccessor testServerAccessor)
{
_testServerAccessor = testServerAccessor;
diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/AbpCliCoreModule.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/AbpCliCoreModule.cs
index a6c4aedd85..cd166ea302 100644
--- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/AbpCliCoreModule.cs
+++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/AbpCliCoreModule.cs
@@ -3,10 +3,10 @@ using Microsoft.Extensions.DependencyInjection;
using Volo.Abp.Cli.Commands;
using Volo.Abp.Cli.Http;
using Volo.Abp.Cli.LIbs;
-using Volo.Abp.Cli.ServiceProxy;
-using Volo.Abp.Cli.ServiceProxy.Angular;
-using Volo.Abp.Cli.ServiceProxy.CSharp;
-using Volo.Abp.Cli.ServiceProxy.JavaScript;
+using Volo.Abp.Cli.ServiceProxying;
+using Volo.Abp.Cli.ServiceProxying.Angular;
+using Volo.Abp.Cli.ServiceProxying.CSharp;
+using Volo.Abp.Cli.ServiceProxying.JavaScript;
using Volo.Abp.Domain;
using Volo.Abp.Http;
using Volo.Abp.IdentityModel;
diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/GenerateProxyCommand.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/GenerateProxyCommand.cs
index 730d46b7f1..70912e2ea1 100644
--- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/GenerateProxyCommand.cs
+++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/GenerateProxyCommand.cs
@@ -1,6 +1,6 @@
using System.Text;
using Microsoft.Extensions.Options;
-using Volo.Abp.Cli.ServiceProxy;
+using Volo.Abp.Cli.ServiceProxying;
using Volo.Abp.DependencyInjection;
namespace Volo.Abp.Cli.Commands
diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProxyCommandBase.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProxyCommandBase.cs
index 019bbb6645..a2d3b95328 100644
--- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProxyCommandBase.cs
+++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/ProxyCommandBase.cs
@@ -6,7 +6,7 @@ using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Logging.Abstractions;
using Microsoft.Extensions.Options;
using Volo.Abp.Cli.Args;
-using Volo.Abp.Cli.ServiceProxy;
+using Volo.Abp.Cli.ServiceProxying;
using Volo.Abp.DependencyInjection;
namespace Volo.Abp.Cli.Commands
diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/RemoveProxyCommand.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/RemoveProxyCommand.cs
index 822810c6d3..1fbf5eb96f 100644
--- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/RemoveProxyCommand.cs
+++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/Commands/RemoveProxyCommand.cs
@@ -1,6 +1,6 @@
using System.Text;
using Microsoft.Extensions.Options;
-using Volo.Abp.Cli.ServiceProxy;
+using Volo.Abp.Cli.ServiceProxying;
using Volo.Abp.DependencyInjection;
namespace Volo.Abp.Cli.Commands
diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxy/AbpCliServiceProxyOptions.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxying/AbpCliServiceProxyOptions.cs
similarity index 88%
rename from framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxy/AbpCliServiceProxyOptions.cs
rename to framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxying/AbpCliServiceProxyOptions.cs
index 967960fc42..b3a9bd2d54 100644
--- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxy/AbpCliServiceProxyOptions.cs
+++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxying/AbpCliServiceProxyOptions.cs
@@ -1,7 +1,7 @@
using System;
using System.Collections.Generic;
-namespace Volo.Abp.Cli.ServiceProxy
+namespace Volo.Abp.Cli.ServiceProxying
{
public class AbpCliServiceProxyOptions
{
diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxy/Angular/AngularServiceProxyGenerator.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxying/Angular/AngularServiceProxyGenerator.cs
similarity index 97%
rename from framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxy/Angular/AngularServiceProxyGenerator.cs
rename to framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxying/Angular/AngularServiceProxyGenerator.cs
index 4af24ba846..2e20ec634a 100644
--- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxy/Angular/AngularServiceProxyGenerator.cs
+++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxying/Angular/AngularServiceProxyGenerator.cs
@@ -2,7 +2,6 @@
using System.Text;
using System.Threading.Tasks;
using Microsoft.Extensions.Logging;
-using Microsoft.Extensions.Logging.Abstractions;
using Newtonsoft.Json.Linq;
using NuGet.Versioning;
using Volo.Abp.Cli.Commands;
@@ -11,7 +10,7 @@ using Volo.Abp.Cli.Utils;
using Volo.Abp.DependencyInjection;
using Volo.Abp.Json;
-namespace Volo.Abp.Cli.ServiceProxy.Angular
+namespace Volo.Abp.Cli.ServiceProxying.Angular
{
public class AngularServiceProxyGenerator : ServiceProxyGeneratorBase , ITransientDependency
{
diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxy/CSharp/CSharpServiceProxyGenerator.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxying/CSharp/CSharpServiceProxyGenerator.cs
similarity index 78%
rename from framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxy/CSharp/CSharpServiceProxyGenerator.cs
rename to framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxying/CSharp/CSharpServiceProxyGenerator.cs
index 586c9183ed..f85183f7c7 100644
--- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxy/CSharp/CSharpServiceProxyGenerator.cs
+++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxying/CSharp/CSharpServiceProxyGenerator.cs
@@ -2,19 +2,16 @@
using System.Collections.Generic;
using System.IO;
using System.Linq;
-using System.Reflection;
using System.Text;
using System.Threading.Tasks;
-using System.Xml;
using Microsoft.Extensions.Logging;
using Volo.Abp.Cli.Commands;
using Volo.Abp.Cli.Http;
using Volo.Abp.DependencyInjection;
using Volo.Abp.Http.Modeling;
using Volo.Abp.Json;
-using Volo.Abp.Modularity;
-namespace Volo.Abp.Cli.ServiceProxy.CSharp
+namespace Volo.Abp.Cli.ServiceProxying.CSharp
{
public class CSharpServiceProxyGenerator : ServiceProxyGeneratorBase, ITransientDependency
{
@@ -28,35 +25,39 @@ namespace Volo.Abp.Cli.ServiceProxy.CSharp
private const string DefaultNamespace = "ClientProxies";
private const string Namespace = "";
private const string AppServicePrefix = "Volo.Abp.Application.Services";
- private readonly string _clientProxyTemplate = "// This file is automatically generated by ABP framework to use MVC Controllers from CSharp" +
+ private readonly string _clientProxyGeneratedTemplate = "// This file is automatically generated by ABP framework to use MVC Controllers from CSharp" +
$"{Environment.NewLine}" +
$"{Environment.NewLine}" +
+ $"{Environment.NewLine}// ReSharper disable once CheckNamespace" +
$"{Environment.NewLine}namespace " +
$"{Environment.NewLine}{{" +
- $"{Environment.NewLine} [Dependency(ReplaceServices = true)]" +
- $"{Environment.NewLine} [ExposeServices(typeof())]" +
- $"{Environment.NewLine} public partial class : ClientProxyBase<>, " +
+ $"{Environment.NewLine} public partial class " +
$"{Environment.NewLine} {{" +
$"{Environment.NewLine} " +
$"{Environment.NewLine} }}" +
$"{Environment.NewLine}}}" +
$"{Environment.NewLine}";
- private readonly string _clientProxyPartialTemplate = "// This file is part of , you can customize it here" +
- $"{Environment.NewLine}namespace " +
- $"{Environment.NewLine}{{" +
- $"{Environment.NewLine} public partial class " +
- $"{Environment.NewLine} {{" +
- $"{Environment.NewLine} }}" +
- $"{Environment.NewLine}}}" +
- $"{Environment.NewLine}";
+ private readonly string _clientProxyTemplate = "// This file is part of , you can customize it here" +
+ $"{Environment.NewLine}using Volo.Abp.DependencyInjection;" +
+ $"{Environment.NewLine}using Volo.Abp.Http.Client.ClientProxying;" +
+ $"{Environment.NewLine}" +
+ $"{Environment.NewLine}" +
+ $"{Environment.NewLine}// ReSharper disable once CheckNamespace" +
+ $"{Environment.NewLine}namespace " +
+ $"{Environment.NewLine}{{" +
+ $"{Environment.NewLine} [Dependency(ReplaceServices = true)]" +
+ $"{Environment.NewLine} [ExposeServices(typeof(), typeof())]" +
+ $"{Environment.NewLine} public partial class : ClientProxyBase<>, " +
+ $"{Environment.NewLine} {{" +
+ $"{Environment.NewLine} }}" +
+ $"{Environment.NewLine}}}" +
+ $"{Environment.NewLine}";
private readonly List _usingNamespaceList = new()
{
"using System;",
"using System.Threading.Tasks;",
- "using Volo.Abp.DependencyInjection;",
"using Volo.Abp.Application.Dtos;",
"using Volo.Abp.Http.Client;",
- "using Volo.Abp.Http.Client.ClientProxying;",
"using Volo.Abp.Http.Modeling;"
};
@@ -69,8 +70,8 @@ namespace Volo.Abp.Cli.ServiceProxy.CSharp
public override async Task GenerateProxyAsync(GenerateProxyArgs args)
{
+ CheckWorkDirectory(args.WorkDirectory);
CheckFolder(args.Folder);
- var projectFilePath = CheckWorkDirectory(args.WorkDirectory);
if (args.CommandName == RemoveProxyCommand.Name)
{
@@ -78,15 +79,13 @@ namespace Volo.Abp.Cli.ServiceProxy.CSharp
return;
}
- var rootNamespace = GetRootNamespace(projectFilePath);
-
var applicationApiDescriptionModel = await GetApplicationApiDescriptionModelAsync(args);
foreach (var controller in applicationApiDescriptionModel.Modules.Values.SelectMany(x => x.Controllers))
{
if (ShouldGenerateProxy(controller.Value))
{
- await GenerateClientProxyFileAsync(args, controller.Value, rootNamespace);
+ await GenerateClientProxyFileAsync(args, controller.Value);
}
}
@@ -119,22 +118,62 @@ namespace Volo.Abp.Cli.ServiceProxy.CSharp
private async Task GenerateClientProxyFileAsync(
GenerateProxyArgs args,
- ControllerApiDescriptionModel controllerApiDescription,
- string rootNamespace)
+ ControllerApiDescriptionModel controllerApiDescription)
{
- var appServiceTypeFullName = controllerApiDescription.Interfaces.Last().Type;
- var appServiceTypeName = appServiceTypeFullName.Split('.').Last();
-
var folder = args.Folder.IsNullOrWhiteSpace()? DefaultNamespace : args.Folder;
- var usingNamespaceList = new List(_usingNamespaceList);
+ var appServiceTypeFullName = controllerApiDescription.Interfaces.Last().Type;
+ var appServiceTypeName = appServiceTypeFullName.Split('.').Last();
var clientProxyName = $"{controllerApiDescription.ControllerName}ClientProxy";
+ var rootNamespace = $"{GetTypeNamespace(controllerApiDescription.Type)}.{folder.Replace('/', '.')}";
+
var clientProxyBuilder = new StringBuilder(_clientProxyTemplate);
- var fileNamespace = $"{rootNamespace}.{folder.Replace('/', '.')}";
- usingNamespaceList.Add($"using {GetTypeNamespace(appServiceTypeFullName)};");
+ clientProxyBuilder.Replace(ClassName, clientProxyName);
+ clientProxyBuilder.Replace(Namespace, rootNamespace);
+ clientProxyBuilder.Replace(ServiceInterface, appServiceTypeName);
+ clientProxyBuilder.Replace(UsingPlaceholder, $"using {GetTypeNamespace(appServiceTypeFullName)};");
+
+ var filePath = Path.Combine(args.WorkDirectory, folder, $"{clientProxyName}.cs");
+ Directory.CreateDirectory(Path.GetDirectoryName(filePath));
+
+ if (!File.Exists(filePath))
+ {
+ using (var writer = new StreamWriter(filePath))
+ {
+ await writer.WriteAsync(clientProxyBuilder.ToString());
+ }
+
+ Logger.LogInformation($"Create {GetLoggerOutputPath(filePath, args.WorkDirectory)}");
+ }
+
+ await GenerateClientProxyGeneratedFileAsync(
+ args,
+ controllerApiDescription,
+ clientProxyName,
+ appServiceTypeName,
+ appServiceTypeFullName,
+ rootNamespace,
+ folder);
+ }
+
+ private async Task GenerateClientProxyGeneratedFileAsync(
+ GenerateProxyArgs args,
+ ControllerApiDescriptionModel controllerApiDescription,
+ string clientProxyName,
+ string appServiceTypeName,
+ string appServiceTypeFullName,
+ string rootNamespace,
+ string folder)
+ {
+ var clientProxyBuilder = new StringBuilder(_clientProxyGeneratedTemplate);
+
+ var usingNamespaceList = new List(_usingNamespaceList)
+ {
+ $"using {GetTypeNamespace(appServiceTypeFullName)};"
+ };
clientProxyBuilder.Replace(ClassName, clientProxyName);
- clientProxyBuilder.Replace(Namespace, fileNamespace);
+ clientProxyBuilder.Replace(Namespace, rootNamespace);
clientProxyBuilder.Replace(ServiceInterface, appServiceTypeName);
foreach (var action in controllerApiDescription.Actions.Values)
@@ -155,39 +194,13 @@ namespace Volo.Abp.Cli.ServiceProxy.CSharp
clientProxyBuilder.Replace($"{Environment.NewLine}{UsingPlaceholder}", string.Empty);
clientProxyBuilder.Replace($"{Environment.NewLine} {MethodPlaceholder}", string.Empty);
- var filePath = Path.Combine(args.WorkDirectory, folder, clientProxyName + ".cs");
- Directory.CreateDirectory(Path.GetDirectoryName(filePath));
+ var filePath = Path.Combine(args.WorkDirectory, folder, $"{clientProxyName}.Generated.cs");
using (var writer = new StreamWriter(filePath))
{
await writer.WriteAsync(clientProxyBuilder.ToString());
Logger.LogInformation($"Create {GetLoggerOutputPath(filePath, args.WorkDirectory)}");
}
-
- await GenerateClientProxyPartialFileAsync(args, clientProxyName, fileNamespace, filePath);
- }
-
- private async Task GenerateClientProxyPartialFileAsync(
- GenerateProxyArgs args,
- string clientProxyName,
- string fileNamespace,
- string filePath)
- {
- var clientProxyBuilder = new StringBuilder(_clientProxyPartialTemplate);
- clientProxyBuilder.Replace(ClassName, clientProxyName);
- clientProxyBuilder.Replace(Namespace, fileNamespace);
-
- filePath = filePath.Replace(".cs", ".partial.cs");
-
- if (!File.Exists(filePath))
- {
- using (var writer = new StreamWriter(filePath))
- {
- await writer.WriteAsync(clientProxyBuilder.ToString());
- }
-
- Logger.LogInformation($"Create {GetLoggerOutputPath(filePath, args.WorkDirectory)}");
- }
}
private void GenerateMethod(
@@ -278,12 +291,12 @@ namespace Volo.Abp.Cli.ServiceProxy.CSharp
return serviceInterface.Type.EndsWith(ServicePostfix);
}
- private static bool ShouldGenerateMethod(string appServiceTypeName, ActionApiDescriptionModel action)
+ private bool ShouldGenerateMethod(string appServiceTypeName, ActionApiDescriptionModel action)
{
return action.ImplementFrom.StartsWith(AppServicePrefix) || action.ImplementFrom.StartsWith(appServiceTypeName);
}
- private static string GetTypeNamespace(string typeFullName)
+ private string GetTypeNamespace(string typeFullName)
{
return typeFullName.Substring(0, typeFullName.LastIndexOf('.'));
}
@@ -328,7 +341,7 @@ namespace Volo.Abp.Cli.ServiceProxy.CSharp
return stringBuilder.ToString();
}
- private static void AddUsingNamespace(List usingNamespaceList, string typeName)
+ private void AddUsingNamespace(List usingNamespaceList, string typeName)
{
var rootNamespace = $"using {GetTypeNamespace(typeName)};";
if (usingNamespaceList.Contains(rootNamespace))
@@ -341,6 +354,13 @@ namespace Volo.Abp.Cli.ServiceProxy.CSharp
private string NormalizeTypeName(string typeName)
{
+ var nullable = string.Empty;
+ if (typeName.EndsWith("?"))
+ {
+ typeName = typeName.TrimEnd('?');
+ nullable = "?";
+ }
+
typeName = typeName switch
{
"Void" => "void",
@@ -355,10 +375,10 @@ namespace Volo.Abp.Cli.ServiceProxy.CSharp
_ => typeName
};
- return typeName;
+ return $"{typeName}{nullable}";
}
- private static string CheckWorkDirectory(string directory)
+ private void CheckWorkDirectory(string directory)
{
if (!Directory.Exists(directory))
{
@@ -371,39 +391,14 @@ namespace Volo.Abp.Cli.ServiceProxy.CSharp
throw new CliUsageException(
"No project file found in the directory. The working directory must have a HttpApi.Client project file.");
}
-
- return projectFiles.First();
}
- private static void CheckFolder(string folder)
+ private void CheckFolder(string folder)
{
if (!folder.IsNullOrWhiteSpace() && Path.HasExtension(folder))
{
throw new CliUsageException("Option folder should be a directory.");
}
}
-
- private Type GetStartupModule(string assemblyPath)
- {
- return Assembly
- .LoadFrom(assemblyPath)
- .GetTypes()
- .SingleOrDefault(AbpModule.IsAbpModule);
- }
-
- private string GetRootNamespace(string projectFilePath)
- {
- var document = new XmlDocument();
- document.Load(projectFilePath);
-
- var rootNamespace = document.SelectSingleNode("//RootNamespace")?.InnerText;
-
- if(rootNamespace.IsNullOrWhiteSpace())
- {
- rootNamespace = Path.GetFileNameWithoutExtension(projectFilePath);
- }
-
- return rootNamespace;
- }
}
}
diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxy/GenerateProxyArgs.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxying/GenerateProxyArgs.cs
similarity index 97%
rename from framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxy/GenerateProxyArgs.cs
rename to framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxying/GenerateProxyArgs.cs
index d20cd26192..0f275e7ea9 100644
--- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxy/GenerateProxyArgs.cs
+++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxying/GenerateProxyArgs.cs
@@ -1,7 +1,7 @@
using System.Collections.Generic;
using JetBrains.Annotations;
-namespace Volo.Abp.Cli.ServiceProxy
+namespace Volo.Abp.Cli.ServiceProxying
{
public class GenerateProxyArgs
{
diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxy/IServiceProxyGenerator.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxying/IServiceProxyGenerator.cs
similarity index 79%
rename from framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxy/IServiceProxyGenerator.cs
rename to framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxying/IServiceProxyGenerator.cs
index c487839804..ada7adf35d 100644
--- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxy/IServiceProxyGenerator.cs
+++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxying/IServiceProxyGenerator.cs
@@ -1,6 +1,6 @@
using System.Threading.Tasks;
-namespace Volo.Abp.Cli.ServiceProxy
+namespace Volo.Abp.Cli.ServiceProxying
{
public interface IServiceProxyGenerator
{
diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxy/JavaScript/JavaScriptServiceProxyGenerator.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxying/JavaScript/JavaScriptServiceProxyGenerator.cs
similarity index 98%
rename from framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxy/JavaScript/JavaScriptServiceProxyGenerator.cs
rename to framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxying/JavaScript/JavaScriptServiceProxyGenerator.cs
index b8046cdc3e..17f50a4d80 100644
--- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxy/JavaScript/JavaScriptServiceProxyGenerator.cs
+++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxying/JavaScript/JavaScriptServiceProxyGenerator.cs
@@ -9,7 +9,7 @@ using Volo.Abp.DependencyInjection;
using Volo.Abp.Http.ProxyScripting.Generators.JQuery;
using Volo.Abp.Json;
-namespace Volo.Abp.Cli.ServiceProxy.JavaScript
+namespace Volo.Abp.Cli.ServiceProxying.JavaScript
{
public class JavaScriptServiceProxyGenerator : ServiceProxyGeneratorBase, ITransientDependency
{
diff --git a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxy/ServiceProxyGeneratorBase.cs b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxying/ServiceProxyGeneratorBase.cs
similarity index 98%
rename from framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxy/ServiceProxyGeneratorBase.cs
rename to framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxying/ServiceProxyGeneratorBase.cs
index f3e402a719..388ac852d4 100644
--- a/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxy/ServiceProxyGeneratorBase.cs
+++ b/framework/src/Volo.Abp.Cli.Core/Volo/Abp/Cli/ServiceProxying/ServiceProxyGeneratorBase.cs
@@ -8,7 +8,7 @@ using Volo.Abp.Cli.Http;
using Volo.Abp.Http.Modeling;
using Volo.Abp.Json;
-namespace Volo.Abp.Cli.ServiceProxy
+namespace Volo.Abp.Cli.ServiceProxying
{
public abstract class ServiceProxyGeneratorBase : IServiceProxyGenerator where T: IServiceProxyGenerator
{
diff --git a/framework/src/Volo.Abp.Cli/Properties/launchSettings.json b/framework/src/Volo.Abp.Cli/Properties/launchSettings.json
new file mode 100644
index 0000000000..7c4e99b812
--- /dev/null
+++ b/framework/src/Volo.Abp.Cli/Properties/launchSettings.json
@@ -0,0 +1,8 @@
+{
+ "profiles": {
+ "Volo.Abp.Cli": {
+ "commandName": "Project",
+ "commandLineArgs": "generate-proxy -t csharp -m blogging -u https://localhost:40017 -wd C:\\Users\\liangshiwei\\Documents\\Code\\abp\\modules\\blogging\\src\\Volo.Blogging.HttpApi.Client"
+ }
+ }
+}
\ No newline at end of file
diff --git a/framework/src/Volo.Abp.Http.Client/Microsoft/Extensions/DependencyInjection/ServiceCollectionDynamicHttpClientProxyExtensions.cs b/framework/src/Volo.Abp.Http.Client/Microsoft/Extensions/DependencyInjection/ServiceCollectionHttpClientProxyExtensions.cs
similarity index 79%
rename from framework/src/Volo.Abp.Http.Client/Microsoft/Extensions/DependencyInjection/ServiceCollectionDynamicHttpClientProxyExtensions.cs
rename to framework/src/Volo.Abp.Http.Client/Microsoft/Extensions/DependencyInjection/ServiceCollectionHttpClientProxyExtensions.cs
index 84b58d6ee0..e4cc09eef3 100644
--- a/framework/src/Volo.Abp.Http.Client/Microsoft/Extensions/DependencyInjection/ServiceCollectionDynamicHttpClientProxyExtensions.cs
+++ b/framework/src/Volo.Abp.Http.Client/Microsoft/Extensions/DependencyInjection/ServiceCollectionHttpClientProxyExtensions.cs
@@ -7,14 +7,48 @@ using Volo.Abp;
using Volo.Abp.Castle.DynamicProxy;
using Volo.Abp.Http.Client;
using Volo.Abp.Http.Client.DynamicProxying;
+using Volo.Abp.Http.Client.Proxying;
using Volo.Abp.Validation;
namespace Microsoft.Extensions.DependencyInjection
{
- public static class ServiceCollectionDynamicHttpClientProxyExtensions
+ public static class ServiceCollectionHttpClientProxyExtensions
{
private static readonly ProxyGenerator ProxyGeneratorInstance = new ProxyGenerator();
+ ///
+ /// Registers Static HTTP Client Proxies for all public interfaces
+ /// extend the interface in the
+ /// given .
+ ///
+ /// Service collection
+ /// The assembly containing the service interfaces
+ ///
+ /// The name of the remote service configuration to be used by the Static HTTP Client proxies.
+ /// See .
+ ///
+ public static IServiceCollection AddStaticHttpClientProxies(
+ [NotNull] this IServiceCollection services,
+ [NotNull] Assembly assembly,
+ [NotNull] string remoteServiceConfigurationName = RemoteServiceConfigurationDictionary.DefaultName)
+ {
+ Check.NotNull(services, nameof(assembly));
+
+ var serviceTypes = assembly.GetTypes().Where(IsSuitableForClientProxying).ToArray();
+
+ foreach (var serviceType in serviceTypes)
+ {
+ AddHttpClientFactory(services, remoteServiceConfigurationName);
+
+ services.Configure(options =>
+ {
+ options.HttpClientProxies[serviceType] = new HttpClientProxyConfig(serviceType, remoteServiceConfigurationName);
+ });
+ }
+
+ return services;
+ }
+
///
/// Registers HTTP Client Proxies for all public interfaces
/// extend the interface in the
@@ -37,7 +71,7 @@ namespace Microsoft.Extensions.DependencyInjection
{
Check.NotNull(services, nameof(assembly));
- var serviceTypes = assembly.GetTypes().Where(IsSuitableForDynamicClientProxying).ToArray();
+ var serviceTypes = assembly.GetTypes().Where(IsSuitableForClientProxying).ToArray();
foreach (var serviceType in serviceTypes)
{
@@ -101,7 +135,7 @@ namespace Microsoft.Extensions.DependencyInjection
services.Configure(options =>
{
- options.HttpClientProxies[type] = new DynamicHttpClientProxyConfig(type, remoteServiceConfigurationName);
+ options.HttpClientProxies[type] = new HttpClientProxyConfig(type, remoteServiceConfigurationName);
});
var interceptorType = typeof(DynamicHttpProxyInterceptor<>).MakeGenericType(type);
@@ -178,12 +212,12 @@ namespace Microsoft.Extensions.DependencyInjection
}
///
- /// Checks wether the type is suitable to use with the dynamic proxying.
+ /// Checks wether the type is suitable to use with the proxying.
/// Currently the type is checked statically against some fixed conditions.
///
/// Type to check
- /// True, if the type is suitable for dynamic proxying. Otherwise false.
- private static bool IsSuitableForDynamicClientProxying(Type type)
+ /// True, if the type is suitable for proxying. Otherwise false.
+ private static bool IsSuitableForClientProxying(Type type)
{
//TODO: Add option to change type filter
diff --git a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/AbpHttpClientOptions.cs b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/AbpHttpClientOptions.cs
index 2e6cd3798d..cc2e35fa55 100644
--- a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/AbpHttpClientOptions.cs
+++ b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/AbpHttpClientOptions.cs
@@ -1,16 +1,17 @@
using System;
using System.Collections.Generic;
using Volo.Abp.Http.Client.DynamicProxying;
+using Volo.Abp.Http.Client.Proxying;
namespace Volo.Abp.Http.Client
{
public class AbpHttpClientOptions
{
- public Dictionary HttpClientProxies { get; set; }
+ public Dictionary HttpClientProxies { get; set; }
public AbpHttpClientOptions()
{
- HttpClientProxies = new Dictionary();
+ HttpClientProxies = new Dictionary();
}
}
}
diff --git a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/ClientProxying/ClientProxyApiDescriptionFinder.cs b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/ClientProxying/ClientProxyApiDescriptionFinder.cs
index c40123c3f1..3c1e69ec51 100644
--- a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/ClientProxying/ClientProxyApiDescriptionFinder.cs
+++ b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/ClientProxying/ClientProxyApiDescriptionFinder.cs
@@ -1,7 +1,6 @@
using System.Collections.Generic;
using System.IO;
using System.Linq;
-using System.Text;
using System.Threading.Tasks;
using Microsoft.Extensions.FileProviders;
using Volo.Abp.DependencyInjection;
@@ -26,7 +25,7 @@ namespace Volo.Abp.Http.Client.ClientProxying
JsonSerializer = jsonSerializer;
ActionApiDescriptionModels = new Dictionary();
- Initial();
+ Initialize();
}
public Task FindActionAsync(string methodName)
@@ -39,7 +38,7 @@ namespace Volo.Abp.Http.Client.ClientProxying
return Task.FromResult(ApplicationApiDescriptionModel);
}
- private void Initial()
+ private void Initialize()
{
ApplicationApiDescriptionModel = GetApplicationApiDescriptionModel();
var controllers = ApplicationApiDescriptionModel.Modules.Select(x=>x.Value).SelectMany(x => x.Controllers.Values).ToList();
@@ -51,7 +50,7 @@ namespace Volo.Abp.Http.Client.ClientProxying
foreach (var actionItem in controller.Actions.Values)
{
var actionKey = $"{appServiceType}.{actionItem.Name}.{string.Join("-", actionItem.ParametersOnMethod.Select(x => x.Type))}";
-
+
if (!ActionApiDescriptionModels.ContainsKey(actionKey))
{
ActionApiDescriptionModels.Add(actionKey, actionItem);
diff --git a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/ClientProxying/ClientProxyBase.cs b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/ClientProxying/ClientProxyBase.cs
index fc329dc16e..0ddd52accf 100644
--- a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/ClientProxying/ClientProxyBase.cs
+++ b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/ClientProxying/ClientProxyBase.cs
@@ -1,8 +1,8 @@
using System.Collections.Generic;
using System.Linq;
-using System.Text;
using System.Threading.Tasks;
using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.Proxying;
using Volo.Abp.Http.Modeling;
namespace Volo.Abp.Http.Client.ClientProxying
@@ -26,7 +26,7 @@ namespace Volo.Abp.Http.Client.ClientProxying
protected virtual async Task BuildHttpProxyExecuterContext(string methodName, params object[] arguments)
{
- var actionKey = GetActionKey(typeof(TService).FullName, methodName, arguments);
+ var actionKey = GetActionKey(methodName, arguments);
var action = await ClientProxyApiDescriptionFinder.FindActionAsync(actionKey);
return new HttpProxyExecuterContext(action, BuildArguments(action, arguments), typeof(TService));
@@ -45,9 +45,8 @@ namespace Volo.Abp.Http.Client.ClientProxying
return dict;
}
- private static string GetActionKey(string serviceTypeFullName, string methodName, params object[] arguments)
+ private static string GetActionKey(string methodName, params object[] arguments)
{
-
return $"{typeof(TService).FullName}.{methodName}.{string.Join("-", arguments.Select(x => x.GetType().FullName))}";
}
}
diff --git a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/DynamicProxying/DynamicHttpProxyInterceptor.cs b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/DynamicProxying/DynamicHttpProxyInterceptor.cs
index e2b6269e12..68eb146201 100644
--- a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/DynamicProxying/DynamicHttpProxyInterceptor.cs
+++ b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/DynamicProxying/DynamicHttpProxyInterceptor.cs
@@ -8,6 +8,7 @@ using Microsoft.Extensions.Logging.Abstractions;
using Microsoft.Extensions.Options;
using Volo.Abp.DependencyInjection;
using Volo.Abp.DynamicProxy;
+using Volo.Abp.Http.Client.Proxying;
using Volo.Abp.Http.Modeling;
namespace Volo.Abp.Http.Client.DynamicProxying
@@ -19,7 +20,7 @@ namespace Volo.Abp.Http.Client.DynamicProxying
protected AbpHttpClientOptions ClientOptions { get; }
protected IHttpProxyExecuter HttpProxyExecuter { get; }
- protected IDynamicProxyHttpClientFactory HttpClientFactory { get; }
+ protected IProxyHttpClientFactory HttpClientFactory { get; }
protected IRemoteServiceConfigurationProvider RemoteServiceConfigurationProvider { get; }
protected IApiDescriptionFinder ApiDescriptionFinder { get; }
@@ -35,7 +36,7 @@ namespace Volo.Abp.Http.Client.DynamicProxying
public DynamicHttpProxyInterceptor(
IHttpProxyExecuter httpProxyExecuter,
IOptions clientOptions,
- IDynamicProxyHttpClientFactory httpClientFactory,
+ IProxyHttpClientFactory httpClientFactory,
IRemoteServiceConfigurationProvider remoteServiceConfigurationProvider,
IApiDescriptionFinder apiDescriptionFinder)
{
diff --git a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/DynamicProxying/ApiVersionInfo.cs b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/ApiVersionInfo.cs
similarity index 91%
rename from framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/DynamicProxying/ApiVersionInfo.cs
rename to framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/ApiVersionInfo.cs
index 88035cf94b..d37de5d452 100644
--- a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/DynamicProxying/ApiVersionInfo.cs
+++ b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/ApiVersionInfo.cs
@@ -1,6 +1,6 @@
using System;
-namespace Volo.Abp.Http.Client.DynamicProxying
+namespace Volo.Abp.Http.Client.Proxying
{
public class ApiVersionInfo //TODO: Rename to not conflict with api versioning apis
{
@@ -19,4 +19,4 @@ namespace Volo.Abp.Http.Client.DynamicProxying
return !BindingSource.IsIn("Path");
}
}
-}
\ No newline at end of file
+}
diff --git a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/DynamicProxying/DefaultDynamicProxyHttpClientFactory.cs b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/DefaultProxyHttpClientFactory.cs
similarity index 52%
rename from framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/DynamicProxying/DefaultDynamicProxyHttpClientFactory.cs
rename to framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/DefaultProxyHttpClientFactory.cs
index e4aad53a11..0f2a272fa6 100644
--- a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/DynamicProxying/DefaultDynamicProxyHttpClientFactory.cs
+++ b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/DefaultProxyHttpClientFactory.cs
@@ -1,25 +1,25 @@
using System.Net.Http;
using Volo.Abp.DependencyInjection;
-namespace Volo.Abp.Http.Client.DynamicProxying
+namespace Volo.Abp.Http.Client.Proxying
{
- public class DefaultDynamicProxyHttpClientFactory : IDynamicProxyHttpClientFactory, ITransientDependency
+ public class DefaultProxyHttpClientFactory : IProxyHttpClientFactory, ITransientDependency
{
private readonly IHttpClientFactory _httpClientFactory;
- public DefaultDynamicProxyHttpClientFactory(IHttpClientFactory httpClientFactory)
+ public DefaultProxyHttpClientFactory(IHttpClientFactory httpClientFactory)
{
_httpClientFactory = httpClientFactory;
}
- public HttpClient Create()
+ public HttpClient Create()
{
return _httpClientFactory.CreateClient();
}
- public HttpClient Create(string name)
+ public HttpClient Create(string name)
{
return _httpClientFactory.CreateClient(name);
}
}
-}
\ No newline at end of file
+}
diff --git a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/DynamicProxying/HttpActionParameterHelper.cs b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/HttpActionParameterHelper.cs
similarity index 93%
rename from framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/DynamicProxying/HttpActionParameterHelper.cs
rename to framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/HttpActionParameterHelper.cs
index 36c3171dc2..1327f4cbe1 100644
--- a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/DynamicProxying/HttpActionParameterHelper.cs
+++ b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/HttpActionParameterHelper.cs
@@ -2,7 +2,7 @@
using Volo.Abp.Http.Modeling;
using Volo.Abp.Reflection;
-namespace Volo.Abp.Http.Client.DynamicProxying
+namespace Volo.Abp.Http.Client.Proxying
{
internal static class HttpActionParameterHelper
{
diff --git a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/DynamicProxying/DynamicHttpClientProxyConfig.cs b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/HttpClientProxyConfig.cs
similarity index 54%
rename from framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/DynamicProxying/DynamicHttpClientProxyConfig.cs
rename to framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/HttpClientProxyConfig.cs
index a287c3dd0f..a457ab3797 100644
--- a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/DynamicProxying/DynamicHttpClientProxyConfig.cs
+++ b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/HttpClientProxyConfig.cs
@@ -1,17 +1,17 @@
using System;
-namespace Volo.Abp.Http.Client.DynamicProxying
+namespace Volo.Abp.Http.Client.Proxying
{
- public class DynamicHttpClientProxyConfig
+ public class HttpClientProxyConfig
{
public Type Type { get; }
public string RemoteServiceName { get; }
- public DynamicHttpClientProxyConfig(Type type, string remoteServiceName)
+ public HttpClientProxyConfig(Type type, string remoteServiceName)
{
Type = type;
RemoteServiceName = remoteServiceName;
}
}
-}
\ No newline at end of file
+}
diff --git a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/HttpProxyExecuter.cs b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/HttpProxyExecuter.cs
similarity index 97%
rename from framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/HttpProxyExecuter.cs
rename to framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/HttpProxyExecuter.cs
index cc0fd1c381..6203d8c690 100644
--- a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/HttpProxyExecuter.cs
+++ b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/HttpProxyExecuter.cs
@@ -11,7 +11,6 @@ using Microsoft.Extensions.Primitives;
using Volo.Abp.Content;
using Volo.Abp.DependencyInjection;
using Volo.Abp.Http.Client.Authentication;
-using Volo.Abp.Http.Client.DynamicProxying;
using Volo.Abp.Http.Modeling;
using Volo.Abp.Http.ProxyScripting.Generators;
using Volo.Abp.Json;
@@ -19,7 +18,7 @@ using Volo.Abp.MultiTenancy;
using Volo.Abp.Threading;
using Volo.Abp.Tracing;
-namespace Volo.Abp.Http.Client
+namespace Volo.Abp.Http.Client.Proxying
{
public class HttpProxyExecuter : IHttpProxyExecuter, ITransientDependency
{
@@ -27,7 +26,7 @@ namespace Volo.Abp.Http.Client
protected ICorrelationIdProvider CorrelationIdProvider { get; }
protected ICurrentTenant CurrentTenant { get; }
protected AbpCorrelationIdOptions AbpCorrelationIdOptions { get; }
- protected IDynamicProxyHttpClientFactory HttpClientFactory { get; }
+ protected IProxyHttpClientFactory HttpClientFactory { get; }
protected IRemoteServiceConfigurationProvider RemoteServiceConfigurationProvider { get; }
protected AbpHttpClientOptions ClientOptions { get; }
protected IJsonSerializer JsonSerializer { get; }
@@ -38,7 +37,7 @@ namespace Volo.Abp.Http.Client
ICorrelationIdProvider correlationIdProvider,
ICurrentTenant currentTenant,
IOptions abpCorrelationIdOptions,
- IDynamicProxyHttpClientFactory httpClientFactory,
+ IProxyHttpClientFactory httpClientFactory,
IRemoteServiceConfigurationProvider remoteServiceConfigurationProvider,
IOptions clientOptions,
IRemoteServiceHttpClientAuthenticator clientAuthenticator,
@@ -89,7 +88,7 @@ namespace Volo.Abp.Http.Client
public virtual async Task MakeRequestAsync(HttpProxyExecuterContext context)
{
- var clientConfig = ClientOptions.HttpClientProxies.GetOrDefault(context.ServiceType) ?? throw new AbpException($"Could not get DynamicHttpClientProxyConfig for {context.ServiceType.FullName}.");
+ var clientConfig = ClientOptions.HttpClientProxies.GetOrDefault(context.ServiceType) ?? throw new AbpException($"Could not get HttpClientProxyConfig for {context.ServiceType.FullName}.");
var remoteServiceConfig = await RemoteServiceConfigurationProvider.GetConfigurationOrDefaultAsync(clientConfig.RemoteServiceName);
var client = HttpClientFactory.Create(clientConfig.RemoteServiceName);
diff --git a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/HttpProxyExecuterContext.cs b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/HttpProxyExecuterContext.cs
similarity index 95%
rename from framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/HttpProxyExecuterContext.cs
rename to framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/HttpProxyExecuterContext.cs
index 5e432202aa..e61b2af93a 100644
--- a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/HttpProxyExecuterContext.cs
+++ b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/HttpProxyExecuterContext.cs
@@ -3,7 +3,7 @@ using System.Collections.Generic;
using JetBrains.Annotations;
using Volo.Abp.Http.Modeling;
-namespace Volo.Abp.Http.Client
+namespace Volo.Abp.Http.Client.Proxying
{
public class HttpProxyExecuterContext
{
diff --git a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/IHttpProxyExecuter.cs b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/IHttpProxyExecuter.cs
similarity index 87%
rename from framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/IHttpProxyExecuter.cs
rename to framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/IHttpProxyExecuter.cs
index 9e1b56c451..a7f48f14fe 100644
--- a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/IHttpProxyExecuter.cs
+++ b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/IHttpProxyExecuter.cs
@@ -1,7 +1,7 @@
using System.Net.Http;
using System.Threading.Tasks;
-namespace Volo.Abp.Http.Client
+namespace Volo.Abp.Http.Client.Proxying
{
public interface IHttpProxyExecuter
{
diff --git a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/DynamicProxying/IDynamicProxyHttpClientFactory.cs b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/IProxyHttpClientFactory.cs
similarity index 52%
rename from framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/DynamicProxying/IDynamicProxyHttpClientFactory.cs
rename to framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/IProxyHttpClientFactory.cs
index 1cc90672a1..c852e00bcf 100644
--- a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/DynamicProxying/IDynamicProxyHttpClientFactory.cs
+++ b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/IProxyHttpClientFactory.cs
@@ -1,11 +1,11 @@
using System.Net.Http;
-namespace Volo.Abp.Http.Client.DynamicProxying
+namespace Volo.Abp.Http.Client.Proxying
{
- public interface IDynamicProxyHttpClientFactory
+ public interface IProxyHttpClientFactory
{
HttpClient Create();
HttpClient Create(string name);
}
-}
\ No newline at end of file
+}
diff --git a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/DynamicProxying/RequestPayloadBuilder.cs b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/RequestPayloadBuilder.cs
similarity index 98%
rename from framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/DynamicProxying/RequestPayloadBuilder.cs
rename to framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/RequestPayloadBuilder.cs
index b121852c2c..a2d469c026 100644
--- a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/DynamicProxying/RequestPayloadBuilder.cs
+++ b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/RequestPayloadBuilder.cs
@@ -6,11 +6,12 @@ using System.Net.Http.Headers;
using System.Text;
using JetBrains.Annotations;
using Volo.Abp.Content;
+using Volo.Abp.Http.Client.DynamicProxying;
using Volo.Abp.Http.Modeling;
using Volo.Abp.Http.ProxyScripting.Generators;
using Volo.Abp.Json;
-namespace Volo.Abp.Http.Client.DynamicProxying
+namespace Volo.Abp.Http.Client.Proxying
{
public static class RequestPayloadBuilder
{
diff --git a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/DynamicProxying/UrlBuilder.cs b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/UrlBuilder.cs
similarity index 98%
rename from framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/DynamicProxying/UrlBuilder.cs
rename to framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/UrlBuilder.cs
index 2a990c70d6..5f916fdd88 100644
--- a/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/DynamicProxying/UrlBuilder.cs
+++ b/framework/src/Volo.Abp.Http.Client/Volo/Abp/Http/Client/Proxying/UrlBuilder.cs
@@ -5,11 +5,12 @@ using System.Globalization;
using System.Linq;
using System.Text;
using JetBrains.Annotations;
+using Volo.Abp.Http.Client.DynamicProxying;
using Volo.Abp.Http.Modeling;
using Volo.Abp.Http.ProxyScripting.Generators;
using Volo.Abp.Localization;
-namespace Volo.Abp.Http.Client.DynamicProxying
+namespace Volo.Abp.Http.Client.Proxying
{
internal static class UrlBuilder
{
diff --git a/modules/account/src/Volo.Abp.Account.HttpApi.Client/ClientProxies/AccountClientProxy.Generated.cs b/modules/account/src/Volo.Abp.Account.HttpApi.Client/ClientProxies/AccountClientProxy.Generated.cs
new file mode 100644
index 0000000000..fd65ed673b
--- /dev/null
+++ b/modules/account/src/Volo.Abp.Account.HttpApi.Client/ClientProxies/AccountClientProxy.Generated.cs
@@ -0,0 +1,30 @@
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Http.Client;
+using Volo.Abp.Http.Modeling;
+using Volo.Abp.Account;
+using Volo.Abp.Identity;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.Abp.Account.ClientProxies
+{
+ public partial class AccountClientProxy
+ {
+ public virtual async Task RegisterAsync(RegisterDto input)
+ {
+ return await RequestAsync(nameof(RegisterAsync), input);
+ }
+
+ public virtual async Task SendPasswordResetCodeAsync(SendPasswordResetCodeDto input)
+ {
+ await RequestAsync(nameof(SendPasswordResetCodeAsync), input);
+ }
+
+ public virtual async Task ResetPasswordAsync(ResetPasswordDto input)
+ {
+ await RequestAsync(nameof(ResetPasswordAsync), input);
+ }
+
+ }
+}
diff --git a/modules/account/src/Volo.Abp.Account.HttpApi.Client/ClientProxies/AccountClientProxy.cs b/modules/account/src/Volo.Abp.Account.HttpApi.Client/ClientProxies/AccountClientProxy.cs
new file mode 100644
index 0000000000..8dd757a52a
--- /dev/null
+++ b/modules/account/src/Volo.Abp.Account.HttpApi.Client/ClientProxies/AccountClientProxy.cs
@@ -0,0 +1,13 @@
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.ClientProxying;
+using Volo.Abp.Account;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.Abp.Account.ClientProxies
+{
+ [Dependency(ReplaceServices = true)]
+ [ExposeServices(typeof(IAccountAppService), typeof(AccountClientProxy))]
+ public partial class AccountClientProxy : ClientProxyBase, IAccountAppService
+ {
+ }
+}
diff --git a/modules/account/src/Volo.Abp.Account.HttpApi.Client/ClientProxies/account-generate-proxy.json b/modules/account/src/Volo.Abp.Account.HttpApi.Client/ClientProxies/account-generate-proxy.json
new file mode 100644
index 0000000000..69b5718e46
--- /dev/null
+++ b/modules/account/src/Volo.Abp.Account.HttpApi.Client/ClientProxies/account-generate-proxy.json
@@ -0,0 +1,229 @@
+{
+ "modules": {
+ "account": {
+ "rootPath": "account",
+ "remoteServiceName": "AbpAccount",
+ "controllers": {
+ "Volo.Abp.Account.Web.Areas.Account.Controllers.AccountController": {
+ "controllerName": "Account",
+ "type": "Volo.Abp.Account.Web.Areas.Account.Controllers.AccountController",
+ "interfaces": [],
+ "actions": {
+ "LoginByLogin": {
+ "uniqueName": "LoginByLogin",
+ "name": "Login",
+ "httpMethod": "POST",
+ "url": "api/account/login",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "login",
+ "typeAsString": "Volo.Abp.Account.Web.Areas.Account.Controllers.Models.UserLoginInfo, Volo.Abp.Account.Web",
+ "type": "Volo.Abp.Account.Web.Areas.Account.Controllers.Models.UserLoginInfo",
+ "typeSimple": "Volo.Abp.Account.Web.Areas.Account.Controllers.Models.UserLoginInfo",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "login",
+ "name": "login",
+ "jsonName": null,
+ "type": "Volo.Abp.Account.Web.Areas.Account.Controllers.Models.UserLoginInfo",
+ "typeSimple": "Volo.Abp.Account.Web.Areas.Account.Controllers.Models.UserLoginInfo",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Abp.Account.Web.Areas.Account.Controllers.Models.AbpLoginResult",
+ "typeSimple": "Volo.Abp.Account.Web.Areas.Account.Controllers.Models.AbpLoginResult"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Abp.Account.Web.Areas.Account.Controllers.AccountController"
+ },
+ "Logout": {
+ "uniqueName": "Logout",
+ "name": "Logout",
+ "httpMethod": "GET",
+ "url": "api/account/logout",
+ "supportedVersions": [],
+ "parametersOnMethod": [],
+ "parameters": [],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Abp.Account.Web.Areas.Account.Controllers.AccountController"
+ },
+ "CheckPasswordByLogin": {
+ "uniqueName": "CheckPasswordByLogin",
+ "name": "CheckPassword",
+ "httpMethod": "POST",
+ "url": "api/account/check-password",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "login",
+ "typeAsString": "Volo.Abp.Account.Web.Areas.Account.Controllers.Models.UserLoginInfo, Volo.Abp.Account.Web",
+ "type": "Volo.Abp.Account.Web.Areas.Account.Controllers.Models.UserLoginInfo",
+ "typeSimple": "Volo.Abp.Account.Web.Areas.Account.Controllers.Models.UserLoginInfo",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "login",
+ "name": "login",
+ "jsonName": null,
+ "type": "Volo.Abp.Account.Web.Areas.Account.Controllers.Models.UserLoginInfo",
+ "typeSimple": "Volo.Abp.Account.Web.Areas.Account.Controllers.Models.UserLoginInfo",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Abp.Account.Web.Areas.Account.Controllers.Models.AbpLoginResult",
+ "typeSimple": "Volo.Abp.Account.Web.Areas.Account.Controllers.Models.AbpLoginResult"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Abp.Account.Web.Areas.Account.Controllers.AccountController"
+ }
+ }
+ },
+ "Volo.Abp.Account.AccountController": {
+ "controllerName": "Account",
+ "type": "Volo.Abp.Account.AccountController",
+ "interfaces": [
+ {
+ "type": "Volo.Abp.Account.IAccountAppService"
+ }
+ ],
+ "actions": {
+ "RegisterAsyncByInput": {
+ "uniqueName": "RegisterAsyncByInput",
+ "name": "RegisterAsync",
+ "httpMethod": "POST",
+ "url": "api/account/register",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.Abp.Account.RegisterDto, Volo.Abp.Account.Application.Contracts",
+ "type": "Volo.Abp.Account.RegisterDto",
+ "typeSimple": "Volo.Abp.Account.RegisterDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.Abp.Account.RegisterDto",
+ "typeSimple": "Volo.Abp.Account.RegisterDto",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Abp.Identity.IdentityUserDto",
+ "typeSimple": "Volo.Abp.Identity.IdentityUserDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Abp.Account.IAccountAppService"
+ },
+ "SendPasswordResetCodeAsyncByInput": {
+ "uniqueName": "SendPasswordResetCodeAsyncByInput",
+ "name": "SendPasswordResetCodeAsync",
+ "httpMethod": "POST",
+ "url": "api/account/send-password-reset-code",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.Abp.Account.SendPasswordResetCodeDto, Volo.Abp.Account.Application.Contracts",
+ "type": "Volo.Abp.Account.SendPasswordResetCodeDto",
+ "typeSimple": "Volo.Abp.Account.SendPasswordResetCodeDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.Abp.Account.SendPasswordResetCodeDto",
+ "typeSimple": "Volo.Abp.Account.SendPasswordResetCodeDto",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Abp.Account.IAccountAppService"
+ },
+ "ResetPasswordAsyncByInput": {
+ "uniqueName": "ResetPasswordAsyncByInput",
+ "name": "ResetPasswordAsync",
+ "httpMethod": "POST",
+ "url": "api/account/reset-password",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.Abp.Account.ResetPasswordDto, Volo.Abp.Account.Application.Contracts",
+ "type": "Volo.Abp.Account.ResetPasswordDto",
+ "typeSimple": "Volo.Abp.Account.ResetPasswordDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.Abp.Account.ResetPasswordDto",
+ "typeSimple": "Volo.Abp.Account.ResetPasswordDto",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Abp.Account.IAccountAppService"
+ }
+ }
+ }
+ }
+ }
+ },
+ "types": {}
+}
\ No newline at end of file
diff --git a/modules/account/src/Volo.Abp.Account.HttpApi.Client/Volo/Abp/Account/AbpAccountHttpApiClientModule.cs b/modules/account/src/Volo.Abp.Account.HttpApi.Client/Volo/Abp/Account/AbpAccountHttpApiClientModule.cs
index a1eb2f9263..ab79807d54 100644
--- a/modules/account/src/Volo.Abp.Account.HttpApi.Client/Volo/Abp/Account/AbpAccountHttpApiClientModule.cs
+++ b/modules/account/src/Volo.Abp.Account.HttpApi.Client/Volo/Abp/Account/AbpAccountHttpApiClientModule.cs
@@ -1,6 +1,7 @@
using Microsoft.Extensions.DependencyInjection;
using Volo.Abp.Http.Client;
using Volo.Abp.Modularity;
+using Volo.Abp.VirtualFileSystem;
namespace Volo.Abp.Account
{
@@ -11,8 +12,13 @@ namespace Volo.Abp.Account
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
- context.Services.AddHttpClientProxies(typeof(AbpAccountApplicationContractsModule).Assembly,
+ context.Services.AddStaticHttpClientProxies(typeof(AbpAccountApplicationContractsModule).Assembly,
AccountRemoteServiceConsts.RemoteServiceName);
+
+ Configure(options =>
+ {
+ options.FileSets.AddEmbedded();
+ });
}
}
-}
\ No newline at end of file
+}
diff --git a/modules/blogging/src/Volo.Blogging.Admin.HttpApi.Client/ClientProxies/BlogManagementClientProxy.Generated.cs b/modules/blogging/src/Volo.Blogging.Admin.HttpApi.Client/ClientProxies/BlogManagementClientProxy.Generated.cs
new file mode 100644
index 0000000000..0b0f9ce6c5
--- /dev/null
+++ b/modules/blogging/src/Volo.Blogging.Admin.HttpApi.Client/ClientProxies/BlogManagementClientProxy.Generated.cs
@@ -0,0 +1,45 @@
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Http.Client;
+using Volo.Abp.Http.Modeling;
+using Volo.Blogging.Admin.Blogs;
+using Volo.Blogging.Blogs.Dtos;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.Blogging.Admin.ClientProxies
+{
+ public partial class BlogManagementClientProxy
+ {
+ public virtual async Task> GetListAsync()
+ {
+ return await RequestAsync>(nameof(GetListAsync));
+ }
+
+ public virtual async Task GetAsync(Guid id)
+ {
+ return await RequestAsync(nameof(GetAsync), id);
+ }
+
+ public virtual async Task CreateAsync(CreateBlogDto input)
+ {
+ return await RequestAsync(nameof(CreateAsync), input);
+ }
+
+ public virtual async Task UpdateAsync(Guid id, UpdateBlogDto input)
+ {
+ return await RequestAsync(nameof(UpdateAsync), id, input);
+ }
+
+ public virtual async Task DeleteAsync(Guid id)
+ {
+ await RequestAsync(nameof(DeleteAsync), id);
+ }
+
+ public virtual async Task ClearCacheAsync(Guid id)
+ {
+ await RequestAsync(nameof(ClearCacheAsync), id);
+ }
+
+ }
+}
diff --git a/modules/blogging/src/Volo.Blogging.Admin.HttpApi.Client/ClientProxies/BlogManagementClientProxy.cs b/modules/blogging/src/Volo.Blogging.Admin.HttpApi.Client/ClientProxies/BlogManagementClientProxy.cs
new file mode 100644
index 0000000000..e9a63c58bd
--- /dev/null
+++ b/modules/blogging/src/Volo.Blogging.Admin.HttpApi.Client/ClientProxies/BlogManagementClientProxy.cs
@@ -0,0 +1,13 @@
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.ClientProxying;
+using Volo.Blogging.Admin.Blogs;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.Blogging.Admin.ClientProxies
+{
+ [Dependency(ReplaceServices = true)]
+ [ExposeServices(typeof(IBlogManagementAppService), typeof(BlogManagementClientProxy))]
+ public partial class BlogManagementClientProxy : ClientProxyBase, IBlogManagementAppService
+ {
+ }
+}
diff --git a/modules/blogging/src/Volo.Blogging.Admin.HttpApi.Client/ClientProxies/bloggingAdmin-generate-proxy.json b/modules/blogging/src/Volo.Blogging.Admin.HttpApi.Client/ClientProxies/bloggingAdmin-generate-proxy.json
new file mode 100644
index 0000000000..cf0138e21d
--- /dev/null
+++ b/modules/blogging/src/Volo.Blogging.Admin.HttpApi.Client/ClientProxies/bloggingAdmin-generate-proxy.json
@@ -0,0 +1,242 @@
+{
+ "modules": {
+ "bloggingAdmin": {
+ "rootPath": "bloggingAdmin",
+ "remoteServiceName": "BloggingAdmin",
+ "controllers": {
+ "Volo.Blogging.Admin.BlogManagementController": {
+ "controllerName": "BlogManagement",
+ "type": "Volo.Blogging.Admin.BlogManagementController",
+ "interfaces": [
+ {
+ "type": "Volo.Blogging.Admin.Blogs.IBlogManagementAppService"
+ }
+ ],
+ "actions": {
+ "GetListAsync": {
+ "uniqueName": "GetListAsync",
+ "name": "GetListAsync",
+ "httpMethod": "GET",
+ "url": "api/blogging/blogs/admin",
+ "supportedVersions": [],
+ "parametersOnMethod": [],
+ "parameters": [],
+ "returnValue": {
+ "type": "Volo.Abp.Application.Dtos.ListResultDto",
+ "typeSimple": "Volo.Abp.Application.Dtos.ListResultDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Blogging.Admin.Blogs.IBlogManagementAppService"
+ },
+ "GetAsyncById": {
+ "uniqueName": "GetAsyncById",
+ "name": "GetAsync",
+ "httpMethod": "GET",
+ "url": "api/blogging/blogs/admin/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Blogging.Blogs.Dtos.BlogDto",
+ "typeSimple": "Volo.Blogging.Blogs.Dtos.BlogDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Blogging.Admin.Blogs.IBlogManagementAppService"
+ },
+ "CreateAsyncByInput": {
+ "uniqueName": "CreateAsyncByInput",
+ "name": "CreateAsync",
+ "httpMethod": "POST",
+ "url": "api/blogging/blogs/admin",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.Blogging.Admin.Blogs.CreateBlogDto, Volo.Blogging.Admin.Application.Contracts",
+ "type": "Volo.Blogging.Admin.Blogs.CreateBlogDto",
+ "typeSimple": "Volo.Blogging.Admin.Blogs.CreateBlogDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.Blogging.Admin.Blogs.CreateBlogDto",
+ "typeSimple": "Volo.Blogging.Admin.Blogs.CreateBlogDto",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Blogging.Blogs.Dtos.BlogDto",
+ "typeSimple": "Volo.Blogging.Blogs.Dtos.BlogDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Blogging.Admin.Blogs.IBlogManagementAppService"
+ },
+ "UpdateAsyncByIdAndInput": {
+ "uniqueName": "UpdateAsyncByIdAndInput",
+ "name": "UpdateAsync",
+ "httpMethod": "PUT",
+ "url": "api/blogging/blogs/admin/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "input",
+ "typeAsString": "Volo.Blogging.Admin.Blogs.UpdateBlogDto, Volo.Blogging.Admin.Application.Contracts",
+ "type": "Volo.Blogging.Admin.Blogs.UpdateBlogDto",
+ "typeSimple": "Volo.Blogging.Admin.Blogs.UpdateBlogDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.Blogging.Admin.Blogs.UpdateBlogDto",
+ "typeSimple": "Volo.Blogging.Admin.Blogs.UpdateBlogDto",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Blogging.Blogs.Dtos.BlogDto",
+ "typeSimple": "Volo.Blogging.Blogs.Dtos.BlogDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Blogging.Admin.Blogs.IBlogManagementAppService"
+ },
+ "DeleteAsyncById": {
+ "uniqueName": "DeleteAsyncById",
+ "name": "DeleteAsync",
+ "httpMethod": "DELETE",
+ "url": "api/blogging/blogs/admin/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Blogging.Admin.Blogs.IBlogManagementAppService"
+ },
+ "ClearCacheAsyncById": {
+ "uniqueName": "ClearCacheAsyncById",
+ "name": "ClearCacheAsync",
+ "httpMethod": "GET",
+ "url": "api/blogging/blogs/admin/clear-cache/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Blogging.Admin.Blogs.IBlogManagementAppService"
+ }
+ }
+ }
+ }
+ }
+ },
+ "types": {}
+}
\ No newline at end of file
diff --git a/modules/blogging/src/Volo.Blogging.Admin.HttpApi.Client/Volo/Blogging/Admin/BloggingAdminHttpApiClientModule.cs b/modules/blogging/src/Volo.Blogging.Admin.HttpApi.Client/Volo/Blogging/Admin/BloggingAdminHttpApiClientModule.cs
index 9ccb1b5d15..7a661657b9 100644
--- a/modules/blogging/src/Volo.Blogging.Admin.HttpApi.Client/Volo/Blogging/Admin/BloggingAdminHttpApiClientModule.cs
+++ b/modules/blogging/src/Volo.Blogging.Admin.HttpApi.Client/Volo/Blogging/Admin/BloggingAdminHttpApiClientModule.cs
@@ -1,6 +1,7 @@
using Microsoft.Extensions.DependencyInjection;
using Volo.Abp.Http.Client;
using Volo.Abp.Modularity;
+using Volo.Abp.VirtualFileSystem;
namespace Volo.Blogging.Admin
{
@@ -11,8 +12,13 @@ namespace Volo.Blogging.Admin
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
- context.Services.AddHttpClientProxies(typeof(BloggingAdminApplicationContractsModule).Assembly,
+ context.Services.AddStaticHttpClientProxies(typeof(BloggingAdminApplicationContractsModule).Assembly,
BloggingAdminRemoteServiceConsts.RemoteServiceName);
+
+ Configure(options =>
+ {
+ options.FileSets.AddEmbedded();
+ });
}
}
diff --git a/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/BlogFilesClientProxy.Generated.cs b/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/BlogFilesClientProxy.Generated.cs
new file mode 100644
index 0000000000..1c2724c6c2
--- /dev/null
+++ b/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/BlogFilesClientProxy.Generated.cs
@@ -0,0 +1,24 @@
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Http.Client;
+using Volo.Abp.Http.Modeling;
+using Volo.Blogging.Files;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.Blogging.ClientProxies
+{
+ public partial class BlogFilesClientProxy
+ {
+ public virtual async Task GetAsync(string name)
+ {
+ return await RequestAsync(nameof(GetAsync), name);
+ }
+
+ public virtual async Task CreateAsync(FileUploadInputDto input)
+ {
+ return await RequestAsync(nameof(CreateAsync), input);
+ }
+
+ }
+}
diff --git a/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/BlogFilesClientProxy.cs b/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/BlogFilesClientProxy.cs
new file mode 100644
index 0000000000..e895a7fcee
--- /dev/null
+++ b/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/BlogFilesClientProxy.cs
@@ -0,0 +1,13 @@
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.ClientProxying;
+using Volo.Blogging.Files;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.Blogging.ClientProxies
+{
+ [Dependency(ReplaceServices = true)]
+ [ExposeServices(typeof(IFileAppService), typeof(BlogFilesClientProxy))]
+ public partial class BlogFilesClientProxy : ClientProxyBase, IFileAppService
+ {
+ }
+}
diff --git a/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/BlogsClientProxy.Generated.cs b/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/BlogsClientProxy.Generated.cs
new file mode 100644
index 0000000000..388fa7bdc7
--- /dev/null
+++ b/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/BlogsClientProxy.Generated.cs
@@ -0,0 +1,30 @@
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Http.Client;
+using Volo.Abp.Http.Modeling;
+using Volo.Blogging.Blogs;
+using Volo.Blogging.Blogs.Dtos;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.Blogging.ClientProxies
+{
+ public partial class BlogsClientProxy
+ {
+ public virtual async Task> GetListAsync()
+ {
+ return await RequestAsync>(nameof(GetListAsync));
+ }
+
+ public virtual async Task GetByShortNameAsync(string shortName)
+ {
+ return await RequestAsync(nameof(GetByShortNameAsync), shortName);
+ }
+
+ public virtual async Task GetAsync(Guid id)
+ {
+ return await RequestAsync(nameof(GetAsync), id);
+ }
+
+ }
+}
diff --git a/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/BlogsClientProxy.cs b/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/BlogsClientProxy.cs
new file mode 100644
index 0000000000..4fde67c9b3
--- /dev/null
+++ b/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/BlogsClientProxy.cs
@@ -0,0 +1,13 @@
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.ClientProxying;
+using Volo.Blogging.Blogs;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.Blogging.ClientProxies
+{
+ [Dependency(ReplaceServices = true)]
+ [ExposeServices(typeof(IBlogAppService), typeof(BlogsClientProxy))]
+ public partial class BlogsClientProxy : ClientProxyBase, IBlogAppService
+ {
+ }
+}
diff --git a/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/CommentsClientProxy.Generated.cs b/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/CommentsClientProxy.Generated.cs
new file mode 100644
index 0000000000..684e142228
--- /dev/null
+++ b/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/CommentsClientProxy.Generated.cs
@@ -0,0 +1,36 @@
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Http.Client;
+using Volo.Abp.Http.Modeling;
+using Volo.Blogging.Comments;
+using System.Collections.Generic;
+using Volo.Blogging.Comments.Dtos;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.Blogging.ClientProxies
+{
+ public partial class CommentsClientProxy
+ {
+ public virtual async Task> GetHierarchicalListOfPostAsync(Guid postId)
+ {
+ return await RequestAsync>(nameof(GetHierarchicalListOfPostAsync), postId);
+ }
+
+ public virtual async Task CreateAsync(CreateCommentDto input)
+ {
+ return await RequestAsync(nameof(CreateAsync), input);
+ }
+
+ public virtual async Task UpdateAsync(Guid id, UpdateCommentDto input)
+ {
+ return await RequestAsync(nameof(UpdateAsync), id, input);
+ }
+
+ public virtual async Task DeleteAsync(Guid id)
+ {
+ await RequestAsync(nameof(DeleteAsync), id);
+ }
+
+ }
+}
diff --git a/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/CommentsClientProxy.cs b/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/CommentsClientProxy.cs
new file mode 100644
index 0000000000..90841ce35f
--- /dev/null
+++ b/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/CommentsClientProxy.cs
@@ -0,0 +1,13 @@
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.ClientProxying;
+using Volo.Blogging.Comments;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.Blogging.ClientProxies
+{
+ [Dependency(ReplaceServices = true)]
+ [ExposeServices(typeof(ICommentAppService), typeof(CommentsClientProxy))]
+ public partial class CommentsClientProxy : ClientProxyBase, ICommentAppService
+ {
+ }
+}
diff --git a/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/PostsClientProxy.Generated.cs b/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/PostsClientProxy.Generated.cs
new file mode 100644
index 0000000000..b68a96ab11
--- /dev/null
+++ b/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/PostsClientProxy.Generated.cs
@@ -0,0 +1,49 @@
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Http.Client;
+using Volo.Abp.Http.Modeling;
+using Volo.Blogging.Posts;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.Blogging.ClientProxies
+{
+ public partial class PostsClientProxy
+ {
+ public virtual async Task> GetListByBlogIdAndTagNameAsync(Guid blogId, string tagName)
+ {
+ return await RequestAsync>(nameof(GetListByBlogIdAndTagNameAsync), blogId, tagName);
+ }
+
+ public virtual async Task> GetTimeOrderedListAsync(Guid blogId)
+ {
+ return await RequestAsync>(nameof(GetTimeOrderedListAsync), blogId);
+ }
+
+ public virtual async Task GetForReadingAsync(GetPostInput input)
+ {
+ return await RequestAsync(nameof(GetForReadingAsync), input);
+ }
+
+ public virtual async Task GetAsync(Guid id)
+ {
+ return await RequestAsync(nameof(GetAsync), id);
+ }
+
+ public virtual async Task CreateAsync(CreatePostDto input)
+ {
+ return await RequestAsync(nameof(CreateAsync), input);
+ }
+
+ public virtual async Task UpdateAsync(Guid id, UpdatePostDto input)
+ {
+ return await RequestAsync(nameof(UpdateAsync), id, input);
+ }
+
+ public virtual async Task DeleteAsync(Guid id)
+ {
+ await RequestAsync(nameof(DeleteAsync), id);
+ }
+
+ }
+}
diff --git a/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/PostsClientProxy.cs b/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/PostsClientProxy.cs
new file mode 100644
index 0000000000..0540ce4f38
--- /dev/null
+++ b/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/PostsClientProxy.cs
@@ -0,0 +1,13 @@
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.ClientProxying;
+using Volo.Blogging.Posts;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.Blogging.ClientProxies
+{
+ [Dependency(ReplaceServices = true)]
+ [ExposeServices(typeof(IPostAppService), typeof(PostsClientProxy))]
+ public partial class PostsClientProxy : ClientProxyBase, IPostAppService
+ {
+ }
+}
diff --git a/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/TagsClientProxy.Generated.cs b/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/TagsClientProxy.Generated.cs
new file mode 100644
index 0000000000..a32d6d37e1
--- /dev/null
+++ b/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/TagsClientProxy.Generated.cs
@@ -0,0 +1,21 @@
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Http.Client;
+using Volo.Abp.Http.Modeling;
+using Volo.Blogging.Tagging;
+using System.Collections.Generic;
+using Volo.Blogging.Tagging.Dtos;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.Blogging.ClientProxies
+{
+ public partial class TagsClientProxy
+ {
+ public virtual async Task> GetPopularTagsAsync(Guid blogId, GetPopularTagsInput input)
+ {
+ return await RequestAsync>(nameof(GetPopularTagsAsync), blogId, input);
+ }
+
+ }
+}
diff --git a/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/TagsClientProxy.cs b/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/TagsClientProxy.cs
new file mode 100644
index 0000000000..6f5cd2ac28
--- /dev/null
+++ b/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/TagsClientProxy.cs
@@ -0,0 +1,13 @@
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.ClientProxying;
+using Volo.Blogging.Tagging;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.Blogging.ClientProxies
+{
+ [Dependency(ReplaceServices = true)]
+ [ExposeServices(typeof(ITagAppService), typeof(TagsClientProxy))]
+ public partial class TagsClientProxy : ClientProxyBase, ITagAppService
+ {
+ }
+}
diff --git a/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/blogging-generate-proxy.json b/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/blogging-generate-proxy.json
new file mode 100644
index 0000000000..1b38b1e8bd
--- /dev/null
+++ b/modules/blogging/src/Volo.Blogging.HttpApi.Client/ClientProxies/blogging-generate-proxy.json
@@ -0,0 +1,851 @@
+{
+ "modules": {
+ "blogging": {
+ "rootPath": "blogging",
+ "remoteServiceName": "Blogging",
+ "controllers": {
+ "Volo.Blogging.BlogFilesController": {
+ "controllerName": "BlogFiles",
+ "type": "Volo.Blogging.BlogFilesController",
+ "interfaces": [
+ {
+ "type": "Volo.Blogging.Files.IFileAppService"
+ }
+ ],
+ "actions": {
+ "GetAsyncByName": {
+ "uniqueName": "GetAsyncByName",
+ "name": "GetAsync",
+ "httpMethod": "GET",
+ "url": "api/blogging/files/{name}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "name",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "name",
+ "name": "name",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Blogging.Files.RawFileDto",
+ "typeSimple": "Volo.Blogging.Files.RawFileDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Blogging.Files.IFileAppService"
+ },
+ "GetForWebAsyncByName": {
+ "uniqueName": "GetForWebAsyncByName",
+ "name": "GetForWebAsync",
+ "httpMethod": "GET",
+ "url": "api/blogging/files/www/{name}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "name",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "name",
+ "name": "name",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Microsoft.AspNetCore.Mvc.FileResult",
+ "typeSimple": "Microsoft.AspNetCore.Mvc.FileResult"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Blogging.BlogFilesController"
+ },
+ "CreateAsyncByInput": {
+ "uniqueName": "CreateAsyncByInput",
+ "name": "CreateAsync",
+ "httpMethod": "POST",
+ "url": "api/blogging/files",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.Blogging.Files.FileUploadInputDto, Volo.Blogging.Application.Contracts",
+ "type": "Volo.Blogging.Files.FileUploadInputDto",
+ "typeSimple": "Volo.Blogging.Files.FileUploadInputDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.Blogging.Files.FileUploadInputDto",
+ "typeSimple": "Volo.Blogging.Files.FileUploadInputDto",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Blogging.Files.FileUploadOutputDto",
+ "typeSimple": "Volo.Blogging.Files.FileUploadOutputDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Blogging.Files.IFileAppService"
+ },
+ "UploadImageByFile": {
+ "uniqueName": "UploadImageByFile",
+ "name": "UploadImage",
+ "httpMethod": "POST",
+ "url": "api/blogging/files/images/upload",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "file",
+ "typeAsString": "Microsoft.AspNetCore.Http.IFormFile, Microsoft.AspNetCore.Http.Features",
+ "type": "Microsoft.AspNetCore.Http.IFormFile",
+ "typeSimple": "Microsoft.AspNetCore.Http.IFormFile",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "file",
+ "name": "file",
+ "jsonName": null,
+ "type": "Microsoft.AspNetCore.Http.IFormFile",
+ "typeSimple": "Microsoft.AspNetCore.Http.IFormFile",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "FormFile",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Microsoft.AspNetCore.Mvc.JsonResult",
+ "typeSimple": "Microsoft.AspNetCore.Mvc.JsonResult"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Blogging.BlogFilesController"
+ }
+ }
+ },
+ "Volo.Blogging.BlogsController": {
+ "controllerName": "Blogs",
+ "type": "Volo.Blogging.BlogsController",
+ "interfaces": [
+ {
+ "type": "Volo.Blogging.Blogs.IBlogAppService"
+ }
+ ],
+ "actions": {
+ "GetListAsync": {
+ "uniqueName": "GetListAsync",
+ "name": "GetListAsync",
+ "httpMethod": "GET",
+ "url": "api/blogging/blogs",
+ "supportedVersions": [],
+ "parametersOnMethod": [],
+ "parameters": [],
+ "returnValue": {
+ "type": "Volo.Abp.Application.Dtos.ListResultDto",
+ "typeSimple": "Volo.Abp.Application.Dtos.ListResultDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Blogging.Blogs.IBlogAppService"
+ },
+ "GetByShortNameAsyncByShortName": {
+ "uniqueName": "GetByShortNameAsyncByShortName",
+ "name": "GetByShortNameAsync",
+ "httpMethod": "GET",
+ "url": "api/blogging/blogs/by-shortname/{shortName}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "shortName",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "shortName",
+ "name": "shortName",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Blogging.Blogs.Dtos.BlogDto",
+ "typeSimple": "Volo.Blogging.Blogs.Dtos.BlogDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Blogging.Blogs.IBlogAppService"
+ },
+ "GetAsyncById": {
+ "uniqueName": "GetAsyncById",
+ "name": "GetAsync",
+ "httpMethod": "GET",
+ "url": "api/blogging/blogs/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Blogging.Blogs.Dtos.BlogDto",
+ "typeSimple": "Volo.Blogging.Blogs.Dtos.BlogDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Blogging.Blogs.IBlogAppService"
+ }
+ }
+ },
+ "Volo.Blogging.CommentsController": {
+ "controllerName": "Comments",
+ "type": "Volo.Blogging.CommentsController",
+ "interfaces": [
+ {
+ "type": "Volo.Blogging.Comments.ICommentAppService"
+ }
+ ],
+ "actions": {
+ "GetHierarchicalListOfPostAsyncByPostId": {
+ "uniqueName": "GetHierarchicalListOfPostAsyncByPostId",
+ "name": "GetHierarchicalListOfPostAsync",
+ "httpMethod": "GET",
+ "url": "api/blogging/comments/hierarchical/{postId}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "postId",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "postId",
+ "name": "postId",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Collections.Generic.List",
+ "typeSimple": "[Volo.Blogging.Comments.Dtos.CommentWithRepliesDto]"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Blogging.Comments.ICommentAppService"
+ },
+ "CreateAsyncByInput": {
+ "uniqueName": "CreateAsyncByInput",
+ "name": "CreateAsync",
+ "httpMethod": "POST",
+ "url": "api/blogging/comments",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.Blogging.Comments.Dtos.CreateCommentDto, Volo.Blogging.Application.Contracts",
+ "type": "Volo.Blogging.Comments.Dtos.CreateCommentDto",
+ "typeSimple": "Volo.Blogging.Comments.Dtos.CreateCommentDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.Blogging.Comments.Dtos.CreateCommentDto",
+ "typeSimple": "Volo.Blogging.Comments.Dtos.CreateCommentDto",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Blogging.Comments.Dtos.CommentWithDetailsDto",
+ "typeSimple": "Volo.Blogging.Comments.Dtos.CommentWithDetailsDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Blogging.Comments.ICommentAppService"
+ },
+ "UpdateAsyncByIdAndInput": {
+ "uniqueName": "UpdateAsyncByIdAndInput",
+ "name": "UpdateAsync",
+ "httpMethod": "PUT",
+ "url": "api/blogging/comments/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "input",
+ "typeAsString": "Volo.Blogging.Comments.Dtos.UpdateCommentDto, Volo.Blogging.Application.Contracts",
+ "type": "Volo.Blogging.Comments.Dtos.UpdateCommentDto",
+ "typeSimple": "Volo.Blogging.Comments.Dtos.UpdateCommentDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.Blogging.Comments.Dtos.UpdateCommentDto",
+ "typeSimple": "Volo.Blogging.Comments.Dtos.UpdateCommentDto",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Blogging.Comments.Dtos.CommentWithDetailsDto",
+ "typeSimple": "Volo.Blogging.Comments.Dtos.CommentWithDetailsDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Blogging.Comments.ICommentAppService"
+ },
+ "DeleteAsyncById": {
+ "uniqueName": "DeleteAsyncById",
+ "name": "DeleteAsync",
+ "httpMethod": "DELETE",
+ "url": "api/blogging/comments/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Blogging.Comments.ICommentAppService"
+ }
+ }
+ },
+ "Volo.Blogging.PostsController": {
+ "controllerName": "Posts",
+ "type": "Volo.Blogging.PostsController",
+ "interfaces": [
+ {
+ "type": "Volo.Blogging.Posts.IPostAppService"
+ }
+ ],
+ "actions": {
+ "GetListByBlogIdAndTagNameAsyncByBlogIdAndTagName": {
+ "uniqueName": "GetListByBlogIdAndTagNameAsyncByBlogIdAndTagName",
+ "name": "GetListByBlogIdAndTagNameAsync",
+ "httpMethod": "GET",
+ "url": "api/blogging/posts/{blogId}/all",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "blogId",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "tagName",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "blogId",
+ "name": "blogId",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "tagName",
+ "name": "tagName",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Abp.Application.Dtos.ListResultDto",
+ "typeSimple": "Volo.Abp.Application.Dtos.ListResultDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Blogging.Posts.IPostAppService"
+ },
+ "GetTimeOrderedListAsyncByBlogId": {
+ "uniqueName": "GetTimeOrderedListAsyncByBlogId",
+ "name": "GetTimeOrderedListAsync",
+ "httpMethod": "GET",
+ "url": "api/blogging/posts/{blogId}/all/by-time",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "blogId",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "blogId",
+ "name": "blogId",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Abp.Application.Dtos.ListResultDto",
+ "typeSimple": "Volo.Abp.Application.Dtos.ListResultDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Blogging.Posts.IPostAppService"
+ },
+ "GetForReadingAsyncByInput": {
+ "uniqueName": "GetForReadingAsyncByInput",
+ "name": "GetForReadingAsync",
+ "httpMethod": "GET",
+ "url": "api/blogging/posts/read",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.Blogging.Posts.GetPostInput, Volo.Blogging.Application.Contracts",
+ "type": "Volo.Blogging.Posts.GetPostInput",
+ "typeSimple": "Volo.Blogging.Posts.GetPostInput",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "Url",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "BlogId",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Blogging.Posts.PostWithDetailsDto",
+ "typeSimple": "Volo.Blogging.Posts.PostWithDetailsDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Blogging.Posts.IPostAppService"
+ },
+ "GetAsyncById": {
+ "uniqueName": "GetAsyncById",
+ "name": "GetAsync",
+ "httpMethod": "GET",
+ "url": "api/blogging/posts/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Blogging.Posts.PostWithDetailsDto",
+ "typeSimple": "Volo.Blogging.Posts.PostWithDetailsDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Blogging.Posts.IPostAppService"
+ },
+ "CreateAsyncByInput": {
+ "uniqueName": "CreateAsyncByInput",
+ "name": "CreateAsync",
+ "httpMethod": "POST",
+ "url": "api/blogging/posts",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.Blogging.Posts.CreatePostDto, Volo.Blogging.Application.Contracts",
+ "type": "Volo.Blogging.Posts.CreatePostDto",
+ "typeSimple": "Volo.Blogging.Posts.CreatePostDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.Blogging.Posts.CreatePostDto",
+ "typeSimple": "Volo.Blogging.Posts.CreatePostDto",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Blogging.Posts.PostWithDetailsDto",
+ "typeSimple": "Volo.Blogging.Posts.PostWithDetailsDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Blogging.Posts.IPostAppService"
+ },
+ "UpdateAsyncByIdAndInput": {
+ "uniqueName": "UpdateAsyncByIdAndInput",
+ "name": "UpdateAsync",
+ "httpMethod": "PUT",
+ "url": "api/blogging/posts/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "input",
+ "typeAsString": "Volo.Blogging.Posts.UpdatePostDto, Volo.Blogging.Application.Contracts",
+ "type": "Volo.Blogging.Posts.UpdatePostDto",
+ "typeSimple": "Volo.Blogging.Posts.UpdatePostDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.Blogging.Posts.UpdatePostDto",
+ "typeSimple": "Volo.Blogging.Posts.UpdatePostDto",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Blogging.Posts.PostWithDetailsDto",
+ "typeSimple": "Volo.Blogging.Posts.PostWithDetailsDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Blogging.Posts.IPostAppService"
+ },
+ "DeleteAsyncById": {
+ "uniqueName": "DeleteAsyncById",
+ "name": "DeleteAsync",
+ "httpMethod": "DELETE",
+ "url": "api/blogging/posts/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Blogging.Posts.IPostAppService"
+ }
+ }
+ },
+ "Volo.Blogging.TagsController": {
+ "controllerName": "Tags",
+ "type": "Volo.Blogging.TagsController",
+ "interfaces": [
+ {
+ "type": "Volo.Blogging.Tagging.ITagAppService"
+ }
+ ],
+ "actions": {
+ "GetPopularTagsAsyncByBlogIdAndInput": {
+ "uniqueName": "GetPopularTagsAsyncByBlogIdAndInput",
+ "name": "GetPopularTagsAsync",
+ "httpMethod": "GET",
+ "url": "api/blogging/tags/popular/{blogId}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "blogId",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "input",
+ "typeAsString": "Volo.Blogging.Tagging.Dtos.GetPopularTagsInput, Volo.Blogging.Application.Contracts",
+ "type": "Volo.Blogging.Tagging.Dtos.GetPopularTagsInput",
+ "typeSimple": "Volo.Blogging.Tagging.Dtos.GetPopularTagsInput",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "blogId",
+ "name": "blogId",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "ResultCount",
+ "jsonName": null,
+ "type": "System.Int32",
+ "typeSimple": "number",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "MinimumPostCount",
+ "jsonName": null,
+ "type": "System.Int32?",
+ "typeSimple": "number?",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ }
+ ],
+ "returnValue": {
+ "type": "System.Collections.Generic.List",
+ "typeSimple": "[Volo.Blogging.Tagging.Dtos.TagDto]"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.Blogging.Tagging.ITagAppService"
+ }
+ }
+ }
+ }
+ }
+ },
+ "types": {}
+}
\ No newline at end of file
diff --git a/modules/blogging/src/Volo.Blogging.HttpApi.Client/Volo/Blogging/BloggingHttpApiClientModule.cs b/modules/blogging/src/Volo.Blogging.HttpApi.Client/Volo/Blogging/BloggingHttpApiClientModule.cs
index 0b33ff3367..ec8e0baa62 100644
--- a/modules/blogging/src/Volo.Blogging.HttpApi.Client/Volo/Blogging/BloggingHttpApiClientModule.cs
+++ b/modules/blogging/src/Volo.Blogging.HttpApi.Client/Volo/Blogging/BloggingHttpApiClientModule.cs
@@ -1,6 +1,7 @@
using Microsoft.Extensions.DependencyInjection;
using Volo.Abp.Http.Client;
using Volo.Abp.Modularity;
+using Volo.Abp.VirtualFileSystem;
namespace Volo.Blogging
{
@@ -11,8 +12,13 @@ namespace Volo.Blogging
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
- context.Services.AddHttpClientProxies(typeof(BloggingApplicationContractsModule).Assembly,
+ context.Services.AddStaticHttpClientProxies(typeof(BloggingApplicationContractsModule).Assembly,
BloggingRemoteServiceConsts.RemoteServiceName);
+
+ Configure(options =>
+ {
+ options.FileSets.AddEmbedded();
+ });
}
}
diff --git a/modules/cms-kit/host/Volo.CmsKit.HttpApi.Host/Properties/launchSettings.json b/modules/cms-kit/host/Volo.CmsKit.HttpApi.Host/Properties/launchSettings.json
index 48d1823cea..0a047d88ec 100644
--- a/modules/cms-kit/host/Volo.CmsKit.HttpApi.Host/Properties/launchSettings.json
+++ b/modules/cms-kit/host/Volo.CmsKit.HttpApi.Host/Properties/launchSettings.json
@@ -1,4 +1,4 @@
-{
+ {
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
@@ -24,4 +24,4 @@
}
}
}
-}
\ No newline at end of file
+}
diff --git a/modules/cms-kit/host/Volo.CmsKit.HttpApi.Host/appsettings.json b/modules/cms-kit/host/Volo.CmsKit.HttpApi.Host/appsettings.json
index 7811df81cb..c122acd535 100644
--- a/modules/cms-kit/host/Volo.CmsKit.HttpApi.Host/appsettings.json
+++ b/modules/cms-kit/host/Volo.CmsKit.HttpApi.Host/appsettings.json
@@ -3,8 +3,8 @@
"CorsOrigins": "https://*.CmsKit.com,http://localhost:4200"
},
"ConnectionStrings": {
- "Default": "Server=localhost;Database=CmsKit_Main;Trusted_Connection=True",
- "CmsKit": "Server=localhost;Database=CmsKit_Module;Trusted_Connection=True"
+ "Default": "Server=(localdb)\\.\\MSSQLLocalDB;Database=CmsKit_Main;Trusted_Connection=True",
+ "CmsKit": "Server=(localdb)\\.\\MSSQLLocalDB;Database=CmsKit_Module;Trusted_Connection=True"
},
"Redis": {
"Configuration": "127.0.0.1"
diff --git a/modules/cms-kit/host/Volo.CmsKit.IdentityServer/appsettings.json b/modules/cms-kit/host/Volo.CmsKit.IdentityServer/appsettings.json
index f79959a2e0..bb48bc54c2 100644
--- a/modules/cms-kit/host/Volo.CmsKit.IdentityServer/appsettings.json
+++ b/modules/cms-kit/host/Volo.CmsKit.IdentityServer/appsettings.json
@@ -5,7 +5,7 @@
},
"AppSelfUrl": "https://localhost:44318/",
"ConnectionStrings": {
- "Default": "Server=localhost;Database=CmsKit_Main;Trusted_Connection=True"
+ "Default": "Server=(localdb)\\.\\MSSQLLocalDB;Database=CmsKit_Main;Trusted_Connection=True"
},
"Redis": {
"Configuration": "127.0.0.1"
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogAdminClientProxy.Generated.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogAdminClientProxy.Generated.cs
new file mode 100644
index 0000000000..cb5520eee1
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogAdminClientProxy.Generated.cs
@@ -0,0 +1,39 @@
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Http.Client;
+using Volo.Abp.Http.Modeling;
+using Volo.CmsKit.Admin.Blogs;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Admin.Blogs.ClientProxies
+{
+ public partial class BlogAdminClientProxy
+ {
+ public virtual async Task GetAsync(Guid id)
+ {
+ return await RequestAsync(nameof(GetAsync), id);
+ }
+
+ public virtual async Task> GetListAsync(BlogGetListInput input)
+ {
+ return await RequestAsync>(nameof(GetListAsync), input);
+ }
+
+ public virtual async Task CreateAsync(CreateBlogDto input)
+ {
+ return await RequestAsync(nameof(CreateAsync), input);
+ }
+
+ public virtual async Task UpdateAsync(Guid id, UpdateBlogDto input)
+ {
+ return await RequestAsync(nameof(UpdateAsync), id, input);
+ }
+
+ public virtual async Task DeleteAsync(Guid id)
+ {
+ await RequestAsync(nameof(DeleteAsync), id);
+ }
+
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogAdminClientProxy.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogAdminClientProxy.cs
new file mode 100644
index 0000000000..6268b10949
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogAdminClientProxy.cs
@@ -0,0 +1,13 @@
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.ClientProxying;
+using Volo.CmsKit.Admin.Blogs;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Admin.Blogs.ClientProxies
+{
+ [Dependency(ReplaceServices = true)]
+ [ExposeServices(typeof(IBlogAdminAppService), typeof(BlogAdminClientProxy))]
+ public partial class BlogAdminClientProxy : ClientProxyBase, IBlogAdminAppService
+ {
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogFeatureAdminClientProxy.Generated.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogFeatureAdminClientProxy.Generated.cs
new file mode 100644
index 0000000000..b3fb55d32d
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogFeatureAdminClientProxy.Generated.cs
@@ -0,0 +1,26 @@
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Http.Client;
+using Volo.Abp.Http.Modeling;
+using Volo.CmsKit.Admin.Blogs;
+using System.Collections.Generic;
+using Volo.CmsKit.Blogs;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Admin.Blogs.ClientProxies
+{
+ public partial class BlogFeatureAdminClientProxy
+ {
+ public virtual async Task> GetListAsync(Guid blogId)
+ {
+ return await RequestAsync>(nameof(GetListAsync), blogId);
+ }
+
+ public virtual async Task SetAsync(Guid blogId, BlogFeatureInputDto dto)
+ {
+ await RequestAsync(nameof(SetAsync), blogId, dto);
+ }
+
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogFeatureAdminClientProxy.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogFeatureAdminClientProxy.cs
new file mode 100644
index 0000000000..803f88e0be
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogFeatureAdminClientProxy.cs
@@ -0,0 +1,13 @@
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.ClientProxying;
+using Volo.CmsKit.Admin.Blogs;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Admin.Blogs.ClientProxies
+{
+ [Dependency(ReplaceServices = true)]
+ [ExposeServices(typeof(IBlogFeatureAdminAppService), typeof(BlogFeatureAdminClientProxy))]
+ public partial class BlogFeatureAdminClientProxy : ClientProxyBase, IBlogFeatureAdminAppService
+ {
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogPostAdminClientProxy.Generated.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogPostAdminClientProxy.Generated.cs
new file mode 100644
index 0000000000..7545873d3d
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogPostAdminClientProxy.Generated.cs
@@ -0,0 +1,39 @@
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Http.Client;
+using Volo.Abp.Http.Modeling;
+using Volo.CmsKit.Admin.Blogs;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Admin.Blogs.ClientProxies
+{
+ public partial class BlogPostAdminClientProxy
+ {
+ public virtual async Task CreateAsync(CreateBlogPostDto input)
+ {
+ return await RequestAsync(nameof(CreateAsync), input);
+ }
+
+ public virtual async Task DeleteAsync(Guid id)
+ {
+ await RequestAsync(nameof(DeleteAsync), id);
+ }
+
+ public virtual async Task GetAsync(Guid id)
+ {
+ return await RequestAsync(nameof(GetAsync), id);
+ }
+
+ public virtual async Task> GetListAsync(BlogPostGetListInput input)
+ {
+ return await RequestAsync>(nameof(GetListAsync), input);
+ }
+
+ public virtual async Task UpdateAsync(Guid id, UpdateBlogPostDto input)
+ {
+ return await RequestAsync(nameof(UpdateAsync), id, input);
+ }
+
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogPostAdminClientProxy.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogPostAdminClientProxy.cs
new file mode 100644
index 0000000000..809b643b63
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/BlogPostAdminClientProxy.cs
@@ -0,0 +1,13 @@
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.ClientProxying;
+using Volo.CmsKit.Admin.Blogs;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Admin.Blogs.ClientProxies
+{
+ [Dependency(ReplaceServices = true)]
+ [ExposeServices(typeof(IBlogPostAdminAppService), typeof(BlogPostAdminClientProxy))]
+ public partial class BlogPostAdminClientProxy : ClientProxyBase, IBlogPostAdminAppService
+ {
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/CommentAdminClientProxy.Generated.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/CommentAdminClientProxy.Generated.cs
new file mode 100644
index 0000000000..9f525637e5
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/CommentAdminClientProxy.Generated.cs
@@ -0,0 +1,29 @@
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Http.Client;
+using Volo.Abp.Http.Modeling;
+using Volo.CmsKit.Admin.Comments;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Admin.Comments.ClientProxies
+{
+ public partial class CommentAdminClientProxy
+ {
+ public virtual async Task> GetListAsync(CommentGetListInput input)
+ {
+ return await RequestAsync>(nameof(GetListAsync), input);
+ }
+
+ public virtual async Task GetAsync(Guid id)
+ {
+ return await RequestAsync(nameof(GetAsync), id);
+ }
+
+ public virtual async Task DeleteAsync(Guid id)
+ {
+ await RequestAsync(nameof(DeleteAsync), id);
+ }
+
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/CommentAdminClientProxy.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/CommentAdminClientProxy.cs
new file mode 100644
index 0000000000..e813d8c32f
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/CommentAdminClientProxy.cs
@@ -0,0 +1,13 @@
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.ClientProxying;
+using Volo.CmsKit.Admin.Comments;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Admin.Comments.ClientProxies
+{
+ [Dependency(ReplaceServices = true)]
+ [ExposeServices(typeof(ICommentAdminAppService), typeof(CommentAdminClientProxy))]
+ public partial class CommentAdminClientProxy : ClientProxyBase, ICommentAdminAppService
+ {
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/EntityTagAdminClientProxy.Generated.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/EntityTagAdminClientProxy.Generated.cs
new file mode 100644
index 0000000000..8002e8c6fe
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/EntityTagAdminClientProxy.Generated.cs
@@ -0,0 +1,29 @@
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Http.Client;
+using Volo.Abp.Http.Modeling;
+using Volo.CmsKit.Admin.Tags;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Admin.Tags.ClientProxies
+{
+ public partial class EntityTagAdminClientProxy
+ {
+ public virtual async Task AddTagToEntityAsync(EntityTagCreateDto input)
+ {
+ await RequestAsync(nameof(AddTagToEntityAsync), input);
+ }
+
+ public virtual async Task RemoveTagFromEntityAsync(EntityTagRemoveDto input)
+ {
+ await RequestAsync(nameof(RemoveTagFromEntityAsync), input);
+ }
+
+ public virtual async Task SetEntityTagsAsync(EntityTagSetDto input)
+ {
+ await RequestAsync(nameof(SetEntityTagsAsync), input);
+ }
+
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/EntityTagAdminClientProxy.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/EntityTagAdminClientProxy.cs
new file mode 100644
index 0000000000..de0fa94f7b
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/EntityTagAdminClientProxy.cs
@@ -0,0 +1,13 @@
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.ClientProxying;
+using Volo.CmsKit.Admin.Tags;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Admin.Tags.ClientProxies
+{
+ [Dependency(ReplaceServices = true)]
+ [ExposeServices(typeof(IEntityTagAdminAppService), typeof(EntityTagAdminClientProxy))]
+ public partial class EntityTagAdminClientProxy : ClientProxyBase, IEntityTagAdminAppService
+ {
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/MediaDescriptorAdminClientProxy.Generated.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/MediaDescriptorAdminClientProxy.Generated.cs
new file mode 100644
index 0000000000..5f04e4baea
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/MediaDescriptorAdminClientProxy.Generated.cs
@@ -0,0 +1,24 @@
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Http.Client;
+using Volo.Abp.Http.Modeling;
+using Volo.CmsKit.Admin.MediaDescriptors;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Admin.MediaDescriptors.ClientProxies
+{
+ public partial class MediaDescriptorAdminClientProxy
+ {
+ public virtual async Task CreateAsync(string entityType, CreateMediaInputWithStream inputStream)
+ {
+ return await RequestAsync(nameof(CreateAsync), entityType, inputStream);
+ }
+
+ public virtual async Task DeleteAsync(Guid id)
+ {
+ await RequestAsync(nameof(DeleteAsync), id);
+ }
+
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/MediaDescriptorAdminClientProxy.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/MediaDescriptorAdminClientProxy.cs
new file mode 100644
index 0000000000..42d1383ad0
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/MediaDescriptorAdminClientProxy.cs
@@ -0,0 +1,13 @@
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.ClientProxying;
+using Volo.CmsKit.Admin.MediaDescriptors;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Admin.MediaDescriptors.ClientProxies
+{
+ [Dependency(ReplaceServices = true)]
+ [ExposeServices(typeof(IMediaDescriptorAdminAppService), typeof(MediaDescriptorAdminClientProxy))]
+ public partial class MediaDescriptorAdminClientProxy : ClientProxyBase, IMediaDescriptorAdminAppService
+ {
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/MenuItemAdminClientProxy.Generated.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/MenuItemAdminClientProxy.Generated.cs
new file mode 100644
index 0000000000..3e48e794c8
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/MenuItemAdminClientProxy.Generated.cs
@@ -0,0 +1,50 @@
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Http.Client;
+using Volo.Abp.Http.Modeling;
+using Volo.CmsKit.Admin.Menus;
+using Volo.CmsKit.Menus;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Admin.Menus.ClientProxies
+{
+ public partial class MenuItemAdminClientProxy
+ {
+ public virtual async Task> GetListAsync()
+ {
+ return await RequestAsync>(nameof(GetListAsync));
+ }
+
+ public virtual async Task GetAsync(Guid id)
+ {
+ return await RequestAsync(nameof(GetAsync), id);
+ }
+
+ public virtual async Task CreateAsync(MenuItemCreateInput input)
+ {
+ return await RequestAsync(nameof(CreateAsync), input);
+ }
+
+ public virtual async Task UpdateAsync(Guid id, MenuItemUpdateInput input)
+ {
+ return await RequestAsync(nameof(UpdateAsync), id, input);
+ }
+
+ public virtual async Task DeleteAsync(Guid id)
+ {
+ await RequestAsync(nameof(DeleteAsync), id);
+ }
+
+ public virtual async Task MoveMenuItemAsync(Guid id, MenuItemMoveInput input)
+ {
+ await RequestAsync(nameof(MoveMenuItemAsync), id, input);
+ }
+
+ public virtual async Task> GetPageLookupAsync(PageLookupInputDto input)
+ {
+ return await RequestAsync>(nameof(GetPageLookupAsync), input);
+ }
+
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/MenuItemAdminClientProxy.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/MenuItemAdminClientProxy.cs
new file mode 100644
index 0000000000..7d7fb557f0
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/MenuItemAdminClientProxy.cs
@@ -0,0 +1,13 @@
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.ClientProxying;
+using Volo.CmsKit.Admin.Menus;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Admin.Menus.ClientProxies
+{
+ [Dependency(ReplaceServices = true)]
+ [ExposeServices(typeof(IMenuItemAdminAppService), typeof(MenuItemAdminClientProxy))]
+ public partial class MenuItemAdminClientProxy : ClientProxyBase, IMenuItemAdminAppService
+ {
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/PageAdminClientProxy.Generated.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/PageAdminClientProxy.Generated.cs
new file mode 100644
index 0000000000..57e64ae0d7
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/PageAdminClientProxy.Generated.cs
@@ -0,0 +1,39 @@
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Http.Client;
+using Volo.Abp.Http.Modeling;
+using Volo.CmsKit.Admin.Pages;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Admin.Pages.ClientProxies
+{
+ public partial class PageAdminClientProxy
+ {
+ public virtual async Task GetAsync(Guid id)
+ {
+ return await RequestAsync(nameof(GetAsync), id);
+ }
+
+ public virtual async Task> GetListAsync(GetPagesInputDto input)
+ {
+ return await RequestAsync>(nameof(GetListAsync), input);
+ }
+
+ public virtual async Task CreateAsync(CreatePageInputDto input)
+ {
+ return await RequestAsync(nameof(CreateAsync), input);
+ }
+
+ public virtual async Task UpdateAsync(Guid id, UpdatePageInputDto input)
+ {
+ return await RequestAsync(nameof(UpdateAsync), id, input);
+ }
+
+ public virtual async Task DeleteAsync(Guid id)
+ {
+ await RequestAsync(nameof(DeleteAsync), id);
+ }
+
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/PageAdminClientProxy.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/PageAdminClientProxy.cs
new file mode 100644
index 0000000000..90e574eb4b
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/PageAdminClientProxy.cs
@@ -0,0 +1,13 @@
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.ClientProxying;
+using Volo.CmsKit.Admin.Pages;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Admin.Pages.ClientProxies
+{
+ [Dependency(ReplaceServices = true)]
+ [ExposeServices(typeof(IPageAdminAppService), typeof(PageAdminClientProxy))]
+ public partial class PageAdminClientProxy : ClientProxyBase, IPageAdminAppService
+ {
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/TagAdminClientProxy.Generated.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/TagAdminClientProxy.Generated.cs
new file mode 100644
index 0000000000..e23f0e4529
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/TagAdminClientProxy.Generated.cs
@@ -0,0 +1,46 @@
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Http.Client;
+using Volo.Abp.Http.Modeling;
+using Volo.CmsKit.Admin.Tags;
+using Volo.CmsKit.Tags;
+using System.Collections.Generic;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Admin.Tags.ClientProxies
+{
+ public partial class TagAdminClientProxy
+ {
+ public virtual async Task CreateAsync(TagCreateDto input)
+ {
+ return await RequestAsync(nameof(CreateAsync), input);
+ }
+
+ public virtual async Task DeleteAsync(Guid id)
+ {
+ await RequestAsync(nameof(DeleteAsync), id);
+ }
+
+ public virtual async Task GetAsync(Guid id)
+ {
+ return await RequestAsync(nameof(GetAsync), id);
+ }
+
+ public virtual async Task> GetListAsync(TagGetListInput input)
+ {
+ return await RequestAsync>(nameof(GetListAsync), input);
+ }
+
+ public virtual async Task UpdateAsync(Guid id, TagUpdateDto input)
+ {
+ return await RequestAsync(nameof(UpdateAsync), id, input);
+ }
+
+ public virtual async Task> GetTagDefinitionsAsync()
+ {
+ return await RequestAsync>(nameof(GetTagDefinitionsAsync));
+ }
+
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/TagAdminClientProxy.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/TagAdminClientProxy.cs
new file mode 100644
index 0000000000..114d32ead7
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/TagAdminClientProxy.cs
@@ -0,0 +1,13 @@
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.ClientProxying;
+using Volo.CmsKit.Admin.Tags;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Admin.Tags.ClientProxies
+{
+ [Dependency(ReplaceServices = true)]
+ [ExposeServices(typeof(ITagAdminAppService), typeof(TagAdminClientProxy))]
+ public partial class TagAdminClientProxy : ClientProxyBase, ITagAdminAppService
+ {
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/cms-kit-generate-proxy.json b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/cms-kit-generate-proxy.json
new file mode 100644
index 0000000000..8e077ebbc5
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/ClientProxies/cms-kit-generate-proxy.json
@@ -0,0 +1,3028 @@
+{
+ "modules": {
+ "cms-kit": {
+ "rootPath": "cms-kit",
+ "remoteServiceName": "CmsKitAdmin",
+ "controllers": {
+ "Volo.CmsKit.Admin.Tags.EntityTagAdminController": {
+ "controllerName": "EntityTagAdmin",
+ "type": "Volo.CmsKit.Admin.Tags.EntityTagAdminController",
+ "interfaces": [
+ {
+ "type": "Volo.CmsKit.Admin.Tags.IEntityTagAdminAppService"
+ }
+ ],
+ "actions": {
+ "AddTagToEntityAsyncByInput": {
+ "uniqueName": "AddTagToEntityAsyncByInput",
+ "name": "AddTagToEntityAsync",
+ "httpMethod": "POST",
+ "url": "api/cms-kit-admin/entity-tags",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Admin.Tags.EntityTagCreateDto, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Tags.EntityTagCreateDto",
+ "typeSimple": "Volo.CmsKit.Admin.Tags.EntityTagCreateDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.CmsKit.Admin.Tags.EntityTagCreateDto",
+ "typeSimple": "Volo.CmsKit.Admin.Tags.EntityTagCreateDto",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.CmsKit.Admin.Tags.IEntityTagAdminAppService"
+ },
+ "RemoveTagFromEntityAsyncByInput": {
+ "uniqueName": "RemoveTagFromEntityAsyncByInput",
+ "name": "RemoveTagFromEntityAsync",
+ "httpMethod": "DELETE",
+ "url": "api/cms-kit-admin/entity-tags",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Admin.Tags.EntityTagRemoveDto, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Tags.EntityTagRemoveDto",
+ "typeSimple": "Volo.CmsKit.Admin.Tags.EntityTagRemoveDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "TagId",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "EntityType",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "EntityId",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.CmsKit.Admin.Tags.IEntityTagAdminAppService"
+ },
+ "SetEntityTagsAsyncByInput": {
+ "uniqueName": "SetEntityTagsAsyncByInput",
+ "name": "SetEntityTagsAsync",
+ "httpMethod": "PUT",
+ "url": "api/cms-kit-admin/entity-tags",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Admin.Tags.EntityTagSetDto, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Tags.EntityTagSetDto",
+ "typeSimple": "Volo.CmsKit.Admin.Tags.EntityTagSetDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.CmsKit.Admin.Tags.EntityTagSetDto",
+ "typeSimple": "Volo.CmsKit.Admin.Tags.EntityTagSetDto",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.CmsKit.Admin.Tags.IEntityTagAdminAppService"
+ }
+ }
+ },
+ "Volo.CmsKit.Admin.Tags.TagAdminController": {
+ "controllerName": "TagAdmin",
+ "type": "Volo.CmsKit.Admin.Tags.TagAdminController",
+ "interfaces": [
+ {
+ "type": "Volo.CmsKit.Admin.Tags.ITagAdminAppService"
+ }
+ ],
+ "actions": {
+ "CreateAsyncByInput": {
+ "uniqueName": "CreateAsyncByInput",
+ "name": "CreateAsync",
+ "httpMethod": "POST",
+ "url": "api/cms-kit-admin/tags",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Admin.Tags.TagCreateDto, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Tags.TagCreateDto",
+ "typeSimple": "Volo.CmsKit.Admin.Tags.TagCreateDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.CmsKit.Admin.Tags.TagCreateDto",
+ "typeSimple": "Volo.CmsKit.Admin.Tags.TagCreateDto",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.CmsKit.Tags.TagDto",
+ "typeSimple": "Volo.CmsKit.Tags.TagDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.Abp.Application.Services.ICreateAppService"
+ },
+ "DeleteAsyncById": {
+ "uniqueName": "DeleteAsyncById",
+ "name": "DeleteAsync",
+ "httpMethod": "DELETE",
+ "url": "api/cms-kit-admin/tags/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.Abp.Application.Services.IDeleteAppService"
+ },
+ "GetAsyncById": {
+ "uniqueName": "GetAsyncById",
+ "name": "GetAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit-admin/tags/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.CmsKit.Tags.TagDto",
+ "typeSimple": "Volo.CmsKit.Tags.TagDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.Abp.Application.Services.IReadOnlyAppService"
+ },
+ "GetListAsyncByInput": {
+ "uniqueName": "GetListAsyncByInput",
+ "name": "GetListAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit-admin/tags",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Admin.Tags.TagGetListInput, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Tags.TagGetListInput",
+ "typeSimple": "Volo.CmsKit.Admin.Tags.TagGetListInput",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "Filter",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "Sorting",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "SkipCount",
+ "jsonName": null,
+ "type": "System.Int32",
+ "typeSimple": "number",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "MaxResultCount",
+ "jsonName": null,
+ "type": "System.Int32",
+ "typeSimple": "number",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Abp.Application.Dtos.PagedResultDto",
+ "typeSimple": "Volo.Abp.Application.Dtos.PagedResultDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.Abp.Application.Services.IReadOnlyAppService"
+ },
+ "UpdateAsyncByIdAndInput": {
+ "uniqueName": "UpdateAsyncByIdAndInput",
+ "name": "UpdateAsync",
+ "httpMethod": "PUT",
+ "url": "api/cms-kit-admin/tags/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Admin.Tags.TagUpdateDto, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Tags.TagUpdateDto",
+ "typeSimple": "Volo.CmsKit.Admin.Tags.TagUpdateDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.CmsKit.Admin.Tags.TagUpdateDto",
+ "typeSimple": "Volo.CmsKit.Admin.Tags.TagUpdateDto",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.CmsKit.Tags.TagDto",
+ "typeSimple": "Volo.CmsKit.Tags.TagDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.Abp.Application.Services.IUpdateAppService"
+ },
+ "GetTagDefinitionsAsync": {
+ "uniqueName": "GetTagDefinitionsAsync",
+ "name": "GetTagDefinitionsAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit-admin/tags/tag-definitions",
+ "supportedVersions": [],
+ "parametersOnMethod": [],
+ "parameters": [],
+ "returnValue": {
+ "type": "System.Collections.Generic.List",
+ "typeSimple": "[Volo.CmsKit.Admin.Tags.TagDefinitionDto]"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.CmsKit.Admin.Tags.ITagAdminAppService"
+ }
+ }
+ },
+ "Volo.CmsKit.Admin.Pages.PageAdminController": {
+ "controllerName": "PageAdmin",
+ "type": "Volo.CmsKit.Admin.Pages.PageAdminController",
+ "interfaces": [
+ {
+ "type": "Volo.CmsKit.Admin.Pages.IPageAdminAppService"
+ }
+ ],
+ "actions": {
+ "GetAsyncById": {
+ "uniqueName": "GetAsyncById",
+ "name": "GetAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit-admin/pages/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.CmsKit.Admin.Pages.PageDto",
+ "typeSimple": "Volo.CmsKit.Admin.Pages.PageDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.Abp.Application.Services.IReadOnlyAppService"
+ },
+ "GetListAsyncByInput": {
+ "uniqueName": "GetListAsyncByInput",
+ "name": "GetListAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit-admin/pages",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Admin.Pages.GetPagesInputDto, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Pages.GetPagesInputDto",
+ "typeSimple": "Volo.CmsKit.Admin.Pages.GetPagesInputDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "Filter",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "Sorting",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "SkipCount",
+ "jsonName": null,
+ "type": "System.Int32",
+ "typeSimple": "number",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "MaxResultCount",
+ "jsonName": null,
+ "type": "System.Int32",
+ "typeSimple": "number",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Abp.Application.Dtos.PagedResultDto",
+ "typeSimple": "Volo.Abp.Application.Dtos.PagedResultDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.Abp.Application.Services.IReadOnlyAppService"
+ },
+ "CreateAsyncByInput": {
+ "uniqueName": "CreateAsyncByInput",
+ "name": "CreateAsync",
+ "httpMethod": "POST",
+ "url": "api/cms-kit-admin/pages",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Admin.Pages.CreatePageInputDto, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Pages.CreatePageInputDto",
+ "typeSimple": "Volo.CmsKit.Admin.Pages.CreatePageInputDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.CmsKit.Admin.Pages.CreatePageInputDto",
+ "typeSimple": "Volo.CmsKit.Admin.Pages.CreatePageInputDto",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.CmsKit.Admin.Pages.PageDto",
+ "typeSimple": "Volo.CmsKit.Admin.Pages.PageDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.Abp.Application.Services.ICreateAppService"
+ },
+ "UpdateAsyncByIdAndInput": {
+ "uniqueName": "UpdateAsyncByIdAndInput",
+ "name": "UpdateAsync",
+ "httpMethod": "PUT",
+ "url": "api/cms-kit-admin/pages/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Admin.Pages.UpdatePageInputDto, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Pages.UpdatePageInputDto",
+ "typeSimple": "Volo.CmsKit.Admin.Pages.UpdatePageInputDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.CmsKit.Admin.Pages.UpdatePageInputDto",
+ "typeSimple": "Volo.CmsKit.Admin.Pages.UpdatePageInputDto",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.CmsKit.Admin.Pages.PageDto",
+ "typeSimple": "Volo.CmsKit.Admin.Pages.PageDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.Abp.Application.Services.IUpdateAppService"
+ },
+ "DeleteAsyncById": {
+ "uniqueName": "DeleteAsyncById",
+ "name": "DeleteAsync",
+ "httpMethod": "DELETE",
+ "url": "api/cms-kit-admin/pages/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.Abp.Application.Services.IDeleteAppService"
+ }
+ }
+ },
+ "Volo.CmsKit.Admin.Menus.MenuItemAdminController": {
+ "controllerName": "MenuItemAdmin",
+ "type": "Volo.CmsKit.Admin.Menus.MenuItemAdminController",
+ "interfaces": [
+ {
+ "type": "Volo.CmsKit.Admin.Menus.IMenuItemAdminAppService"
+ }
+ ],
+ "actions": {
+ "GetListAsync": {
+ "uniqueName": "GetListAsync",
+ "name": "GetListAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit-admin/menu-items",
+ "supportedVersions": [],
+ "parametersOnMethod": [],
+ "parameters": [],
+ "returnValue": {
+ "type": "Volo.Abp.Application.Dtos.ListResultDto",
+ "typeSimple": "Volo.Abp.Application.Dtos.ListResultDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.CmsKit.Admin.Menus.IMenuItemAdminAppService"
+ },
+ "GetAsyncById": {
+ "uniqueName": "GetAsyncById",
+ "name": "GetAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit-admin/menu-items/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.CmsKit.Menus.MenuItemDto",
+ "typeSimple": "Volo.CmsKit.Menus.MenuItemDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.CmsKit.Admin.Menus.IMenuItemAdminAppService"
+ },
+ "CreateAsyncByInput": {
+ "uniqueName": "CreateAsyncByInput",
+ "name": "CreateAsync",
+ "httpMethod": "POST",
+ "url": "api/cms-kit-admin/menu-items",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Admin.Menus.MenuItemCreateInput, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Menus.MenuItemCreateInput",
+ "typeSimple": "Volo.CmsKit.Admin.Menus.MenuItemCreateInput",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.CmsKit.Admin.Menus.MenuItemCreateInput",
+ "typeSimple": "Volo.CmsKit.Admin.Menus.MenuItemCreateInput",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.CmsKit.Menus.MenuItemDto",
+ "typeSimple": "Volo.CmsKit.Menus.MenuItemDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.CmsKit.Admin.Menus.IMenuItemAdminAppService"
+ },
+ "UpdateAsyncByIdAndInput": {
+ "uniqueName": "UpdateAsyncByIdAndInput",
+ "name": "UpdateAsync",
+ "httpMethod": "PUT",
+ "url": "api/cms-kit-admin/menu-items/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Admin.Menus.MenuItemUpdateInput, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Menus.MenuItemUpdateInput",
+ "typeSimple": "Volo.CmsKit.Admin.Menus.MenuItemUpdateInput",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.CmsKit.Admin.Menus.MenuItemUpdateInput",
+ "typeSimple": "Volo.CmsKit.Admin.Menus.MenuItemUpdateInput",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.CmsKit.Menus.MenuItemDto",
+ "typeSimple": "Volo.CmsKit.Menus.MenuItemDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.CmsKit.Admin.Menus.IMenuItemAdminAppService"
+ },
+ "DeleteAsyncById": {
+ "uniqueName": "DeleteAsyncById",
+ "name": "DeleteAsync",
+ "httpMethod": "DELETE",
+ "url": "api/cms-kit-admin/menu-items/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.CmsKit.Admin.Menus.IMenuItemAdminAppService"
+ },
+ "MoveMenuItemAsyncByIdAndInput": {
+ "uniqueName": "MoveMenuItemAsyncByIdAndInput",
+ "name": "MoveMenuItemAsync",
+ "httpMethod": "PUT",
+ "url": "api/cms-kit-admin/menu-items/{id}/move",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Admin.Menus.MenuItemMoveInput, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Menus.MenuItemMoveInput",
+ "typeSimple": "Volo.CmsKit.Admin.Menus.MenuItemMoveInput",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.CmsKit.Admin.Menus.MenuItemMoveInput",
+ "typeSimple": "Volo.CmsKit.Admin.Menus.MenuItemMoveInput",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.CmsKit.Admin.Menus.IMenuItemAdminAppService"
+ },
+ "GetPageLookupAsyncByInput": {
+ "uniqueName": "GetPageLookupAsyncByInput",
+ "name": "GetPageLookupAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit-admin/menu-items/lookup/pages",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Admin.Menus.PageLookupInputDto, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Menus.PageLookupInputDto",
+ "typeSimple": "Volo.CmsKit.Admin.Menus.PageLookupInputDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "Filter",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "Sorting",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "SkipCount",
+ "jsonName": null,
+ "type": "System.Int32",
+ "typeSimple": "number",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "MaxResultCount",
+ "jsonName": null,
+ "type": "System.Int32",
+ "typeSimple": "number",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Abp.Application.Dtos.PagedResultDto",
+ "typeSimple": "Volo.Abp.Application.Dtos.PagedResultDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.CmsKit.Admin.Menus.IMenuItemAdminAppService"
+ }
+ }
+ },
+ "Volo.CmsKit.Admin.MediaDescriptors.MediaDescriptorAdminController": {
+ "controllerName": "MediaDescriptorAdmin",
+ "type": "Volo.CmsKit.Admin.MediaDescriptors.MediaDescriptorAdminController",
+ "interfaces": [
+ {
+ "type": "Volo.CmsKit.Admin.MediaDescriptors.IMediaDescriptorAdminAppService"
+ }
+ ],
+ "actions": {
+ "CreateAsyncByEntityTypeAndInputStream": {
+ "uniqueName": "CreateAsyncByEntityTypeAndInputStream",
+ "name": "CreateAsync",
+ "httpMethod": "POST",
+ "url": "api/cms-kit-admin/media/{entityType}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "entityType",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "inputStream",
+ "typeAsString": "Volo.CmsKit.Admin.MediaDescriptors.CreateMediaInputWithStream, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.MediaDescriptors.CreateMediaInputWithStream",
+ "typeSimple": "Volo.CmsKit.Admin.MediaDescriptors.CreateMediaInputWithStream",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "entityType",
+ "name": "entityType",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "inputStream",
+ "name": "Name",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "inputStream"
+ },
+ {
+ "nameOnMethod": "inputStream",
+ "name": "File",
+ "jsonName": null,
+ "type": "Volo.Abp.Content.IRemoteStreamContent",
+ "typeSimple": "Volo.Abp.Content.IRemoteStreamContent",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "FormFile",
+ "descriptorName": "inputStream"
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.CmsKit.Admin.MediaDescriptors.MediaDescriptorDto",
+ "typeSimple": "Volo.CmsKit.Admin.MediaDescriptors.MediaDescriptorDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.CmsKit.Admin.MediaDescriptors.IMediaDescriptorAdminAppService"
+ },
+ "DeleteAsyncById": {
+ "uniqueName": "DeleteAsyncById",
+ "name": "DeleteAsync",
+ "httpMethod": "DELETE",
+ "url": "api/cms-kit-admin/media/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.CmsKit.Admin.MediaDescriptors.IMediaDescriptorAdminAppService"
+ }
+ }
+ },
+ "Volo.CmsKit.Admin.Comments.CommentAdminController": {
+ "controllerName": "CommentAdmin",
+ "type": "Volo.CmsKit.Admin.Comments.CommentAdminController",
+ "interfaces": [
+ {
+ "type": "Volo.CmsKit.Admin.Comments.ICommentAdminAppService"
+ }
+ ],
+ "actions": {
+ "GetListAsyncByInput": {
+ "uniqueName": "GetListAsyncByInput",
+ "name": "GetListAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit-admin/comments",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Admin.Comments.CommentGetListInput, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Comments.CommentGetListInput",
+ "typeSimple": "Volo.CmsKit.Admin.Comments.CommentGetListInput",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "EntityType",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "Text",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "RepliedCommentId",
+ "jsonName": null,
+ "type": "System.Guid?",
+ "typeSimple": "string?",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "Author",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "CreationStartDate",
+ "jsonName": null,
+ "type": "System.DateTime?",
+ "typeSimple": "string?",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "CreationEndDate",
+ "jsonName": null,
+ "type": "System.DateTime?",
+ "typeSimple": "string?",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "Sorting",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "SkipCount",
+ "jsonName": null,
+ "type": "System.Int32",
+ "typeSimple": "number",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "MaxResultCount",
+ "jsonName": null,
+ "type": "System.Int32",
+ "typeSimple": "number",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Abp.Application.Dtos.PagedResultDto",
+ "typeSimple": "Volo.Abp.Application.Dtos.PagedResultDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.CmsKit.Admin.Comments.ICommentAdminAppService"
+ },
+ "GetAsyncById": {
+ "uniqueName": "GetAsyncById",
+ "name": "GetAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit-admin/comments/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.CmsKit.Admin.Comments.CommentWithAuthorDto",
+ "typeSimple": "Volo.CmsKit.Admin.Comments.CommentWithAuthorDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.CmsKit.Admin.Comments.ICommentAdminAppService"
+ },
+ "DeleteAsyncById": {
+ "uniqueName": "DeleteAsyncById",
+ "name": "DeleteAsync",
+ "httpMethod": "DELETE",
+ "url": "api/cms-kit-admin/comments/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.CmsKit.Admin.Comments.ICommentAdminAppService"
+ }
+ }
+ },
+ "Volo.CmsKit.Admin.Blogs.BlogAdminController": {
+ "controllerName": "BlogAdmin",
+ "type": "Volo.CmsKit.Admin.Blogs.BlogAdminController",
+ "interfaces": [
+ {
+ "type": "Volo.CmsKit.Admin.Blogs.IBlogAdminAppService"
+ }
+ ],
+ "actions": {
+ "GetAsyncById": {
+ "uniqueName": "GetAsyncById",
+ "name": "GetAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit-admin/blogs/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.CmsKit.Admin.Blogs.BlogDto",
+ "typeSimple": "Volo.CmsKit.Admin.Blogs.BlogDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.Abp.Application.Services.IReadOnlyAppService"
+ },
+ "GetListAsyncByInput": {
+ "uniqueName": "GetListAsyncByInput",
+ "name": "GetListAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit-admin/blogs",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Admin.Blogs.BlogGetListInput, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Blogs.BlogGetListInput",
+ "typeSimple": "Volo.CmsKit.Admin.Blogs.BlogGetListInput",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "Filter",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "Sorting",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "SkipCount",
+ "jsonName": null,
+ "type": "System.Int32",
+ "typeSimple": "number",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "MaxResultCount",
+ "jsonName": null,
+ "type": "System.Int32",
+ "typeSimple": "number",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Abp.Application.Dtos.PagedResultDto",
+ "typeSimple": "Volo.Abp.Application.Dtos.PagedResultDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.Abp.Application.Services.IReadOnlyAppService"
+ },
+ "CreateAsyncByInput": {
+ "uniqueName": "CreateAsyncByInput",
+ "name": "CreateAsync",
+ "httpMethod": "POST",
+ "url": "api/cms-kit-admin/blogs",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Admin.Blogs.CreateBlogDto, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Blogs.CreateBlogDto",
+ "typeSimple": "Volo.CmsKit.Admin.Blogs.CreateBlogDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.CmsKit.Admin.Blogs.CreateBlogDto",
+ "typeSimple": "Volo.CmsKit.Admin.Blogs.CreateBlogDto",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.CmsKit.Admin.Blogs.BlogDto",
+ "typeSimple": "Volo.CmsKit.Admin.Blogs.BlogDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.Abp.Application.Services.ICreateAppService"
+ },
+ "UpdateAsyncByIdAndInput": {
+ "uniqueName": "UpdateAsyncByIdAndInput",
+ "name": "UpdateAsync",
+ "httpMethod": "PUT",
+ "url": "api/cms-kit-admin/blogs/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Admin.Blogs.UpdateBlogDto, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Blogs.UpdateBlogDto",
+ "typeSimple": "Volo.CmsKit.Admin.Blogs.UpdateBlogDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.CmsKit.Admin.Blogs.UpdateBlogDto",
+ "typeSimple": "Volo.CmsKit.Admin.Blogs.UpdateBlogDto",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.CmsKit.Admin.Blogs.BlogDto",
+ "typeSimple": "Volo.CmsKit.Admin.Blogs.BlogDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.Abp.Application.Services.IUpdateAppService"
+ },
+ "DeleteAsyncById": {
+ "uniqueName": "DeleteAsyncById",
+ "name": "DeleteAsync",
+ "httpMethod": "DELETE",
+ "url": "api/cms-kit-admin/blogs/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.Abp.Application.Services.IDeleteAppService"
+ }
+ }
+ },
+ "Volo.CmsKit.Admin.Blogs.BlogFeatureAdminController": {
+ "controllerName": "BlogFeatureAdmin",
+ "type": "Volo.CmsKit.Admin.Blogs.BlogFeatureAdminController",
+ "interfaces": [
+ {
+ "type": "Volo.CmsKit.Admin.Blogs.IBlogFeatureAdminAppService"
+ }
+ ],
+ "actions": {
+ "GetListAsyncByBlogId": {
+ "uniqueName": "GetListAsyncByBlogId",
+ "name": "GetListAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit-admin/blogs/{blogId}/features",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "blogId",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "blogId",
+ "name": "blogId",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Collections.Generic.List",
+ "typeSimple": "[Volo.CmsKit.Blogs.BlogFeatureDto]"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.CmsKit.Admin.Blogs.IBlogFeatureAdminAppService"
+ },
+ "SetAsyncByBlogIdAndDto": {
+ "uniqueName": "SetAsyncByBlogIdAndDto",
+ "name": "SetAsync",
+ "httpMethod": "PUT",
+ "url": "api/cms-kit-admin/blogs/{blogId}/features",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "blogId",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "dto",
+ "typeAsString": "Volo.CmsKit.Admin.Blogs.BlogFeatureInputDto, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Blogs.BlogFeatureInputDto",
+ "typeSimple": "Volo.CmsKit.Admin.Blogs.BlogFeatureInputDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "blogId",
+ "name": "blogId",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "dto",
+ "name": "dto",
+ "jsonName": null,
+ "type": "Volo.CmsKit.Admin.Blogs.BlogFeatureInputDto",
+ "typeSimple": "Volo.CmsKit.Admin.Blogs.BlogFeatureInputDto",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.CmsKit.Admin.Blogs.IBlogFeatureAdminAppService"
+ }
+ }
+ },
+ "Volo.CmsKit.Admin.Blogs.BlogPostAdminController": {
+ "controllerName": "BlogPostAdmin",
+ "type": "Volo.CmsKit.Admin.Blogs.BlogPostAdminController",
+ "interfaces": [
+ {
+ "type": "Volo.CmsKit.Admin.Blogs.IBlogPostAdminAppService"
+ }
+ ],
+ "actions": {
+ "CreateAsyncByInput": {
+ "uniqueName": "CreateAsyncByInput",
+ "name": "CreateAsync",
+ "httpMethod": "POST",
+ "url": "api/cms-kit-admin/blogs/blog-posts",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Admin.Blogs.CreateBlogPostDto, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Blogs.CreateBlogPostDto",
+ "typeSimple": "Volo.CmsKit.Admin.Blogs.CreateBlogPostDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.CmsKit.Admin.Blogs.CreateBlogPostDto",
+ "typeSimple": "Volo.CmsKit.Admin.Blogs.CreateBlogPostDto",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.CmsKit.Admin.Blogs.BlogPostDto",
+ "typeSimple": "Volo.CmsKit.Admin.Blogs.BlogPostDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.Abp.Application.Services.ICreateAppService"
+ },
+ "DeleteAsyncById": {
+ "uniqueName": "DeleteAsyncById",
+ "name": "DeleteAsync",
+ "httpMethod": "DELETE",
+ "url": "api/cms-kit-admin/blogs/blog-posts/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.Abp.Application.Services.IDeleteAppService"
+ },
+ "GetAsyncById": {
+ "uniqueName": "GetAsyncById",
+ "name": "GetAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit-admin/blogs/blog-posts/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [
+ "GuidRouteConstraint"
+ ],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.CmsKit.Admin.Blogs.BlogPostDto",
+ "typeSimple": "Volo.CmsKit.Admin.Blogs.BlogPostDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.Abp.Application.Services.IReadOnlyAppService"
+ },
+ "GetListAsyncByInput": {
+ "uniqueName": "GetListAsyncByInput",
+ "name": "GetListAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit-admin/blogs/blog-posts",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Admin.Blogs.BlogPostGetListInput, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Blogs.BlogPostGetListInput",
+ "typeSimple": "Volo.CmsKit.Admin.Blogs.BlogPostGetListInput",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "Filter",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "BlogId",
+ "jsonName": null,
+ "type": "System.Guid?",
+ "typeSimple": "string?",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "Sorting",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "SkipCount",
+ "jsonName": null,
+ "type": "System.Int32",
+ "typeSimple": "number",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "MaxResultCount",
+ "jsonName": null,
+ "type": "System.Int32",
+ "typeSimple": "number",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Abp.Application.Dtos.PagedResultDto",
+ "typeSimple": "Volo.Abp.Application.Dtos.PagedResultDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.Abp.Application.Services.IReadOnlyAppService"
+ },
+ "UpdateAsyncByIdAndInput": {
+ "uniqueName": "UpdateAsyncByIdAndInput",
+ "name": "UpdateAsync",
+ "httpMethod": "PUT",
+ "url": "api/cms-kit-admin/blogs/blog-posts/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Admin.Blogs.UpdateBlogPostDto, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Blogs.UpdateBlogPostDto",
+ "typeSimple": "Volo.CmsKit.Admin.Blogs.UpdateBlogPostDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.CmsKit.Admin.Blogs.UpdateBlogPostDto",
+ "typeSimple": "Volo.CmsKit.Admin.Blogs.UpdateBlogPostDto",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.CmsKit.Admin.Blogs.BlogPostDto",
+ "typeSimple": "Volo.CmsKit.Admin.Blogs.BlogPostDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.Abp.Application.Services.IUpdateAppService"
+ }
+ }
+ },
+ "Volo.CmsKit.Public.Tags.TagPublicController": {
+ "controllerName": "TagPublic",
+ "type": "Volo.CmsKit.Public.Tags.TagPublicController",
+ "interfaces": [
+ {
+ "type": "Volo.CmsKit.Tags.ITagAppService"
+ }
+ ],
+ "actions": {
+ "GetAllRelatedTagsAsyncByEntityTypeAndEntityId": {
+ "uniqueName": "GetAllRelatedTagsAsyncByEntityTypeAndEntityId",
+ "name": "GetAllRelatedTagsAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit-public/tags/{entityType}/{entityId}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "entityType",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "entityId",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "entityType",
+ "name": "entityType",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "entityId",
+ "name": "entityId",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Collections.Generic.List",
+ "typeSimple": "[Volo.CmsKit.Tags.TagDto]"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.CmsKit.Tags.ITagAppService"
+ }
+ }
+ },
+ "Volo.CmsKit.Public.Reactions.ReactionPublicController": {
+ "controllerName": "ReactionPublic",
+ "type": "Volo.CmsKit.Public.Reactions.ReactionPublicController",
+ "interfaces": [
+ {
+ "type": "Volo.CmsKit.Public.Reactions.IReactionPublicAppService"
+ }
+ ],
+ "actions": {
+ "GetForSelectionAsyncByEntityTypeAndEntityId": {
+ "uniqueName": "GetForSelectionAsyncByEntityTypeAndEntityId",
+ "name": "GetForSelectionAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit-public/reactions/{entityType}/{entityId}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "entityType",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "entityId",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "entityType",
+ "name": "entityType",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "entityId",
+ "name": "entityId",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Abp.Application.Dtos.ListResultDto",
+ "typeSimple": "Volo.Abp.Application.Dtos.ListResultDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.CmsKit.Public.Reactions.IReactionPublicAppService"
+ },
+ "CreateAsyncByEntityTypeAndEntityIdAndReaction": {
+ "uniqueName": "CreateAsyncByEntityTypeAndEntityIdAndReaction",
+ "name": "CreateAsync",
+ "httpMethod": "PUT",
+ "url": "api/cms-kit-public/reactions/{entityType}/{entityId}/{reaction}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "entityType",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "entityId",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "reaction",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "entityType",
+ "name": "entityType",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "entityId",
+ "name": "entityId",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "reaction",
+ "name": "reaction",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.CmsKit.Public.Reactions.IReactionPublicAppService"
+ },
+ "DeleteAsyncByEntityTypeAndEntityIdAndReaction": {
+ "uniqueName": "DeleteAsyncByEntityTypeAndEntityIdAndReaction",
+ "name": "DeleteAsync",
+ "httpMethod": "DELETE",
+ "url": "api/cms-kit-public/reactions/{entityType}/{entityId}/{reaction}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "entityType",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "entityId",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "reaction",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "entityType",
+ "name": "entityType",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "entityId",
+ "name": "entityId",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "reaction",
+ "name": "reaction",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.CmsKit.Public.Reactions.IReactionPublicAppService"
+ }
+ }
+ },
+ "Volo.CmsKit.Public.Ratings.RatingPublicController": {
+ "controllerName": "RatingPublic",
+ "type": "Volo.CmsKit.Public.Ratings.RatingPublicController",
+ "interfaces": [
+ {
+ "type": "Volo.CmsKit.Public.Ratings.IRatingPublicAppService"
+ }
+ ],
+ "actions": {
+ "CreateAsyncByEntityTypeAndEntityIdAndInput": {
+ "uniqueName": "CreateAsyncByEntityTypeAndEntityIdAndInput",
+ "name": "CreateAsync",
+ "httpMethod": "PUT",
+ "url": "api/cms-kit-public/ratings/{entityType}/{entityId}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "entityType",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "entityId",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Public.Ratings.CreateUpdateRatingInput, Volo.CmsKit.Public.Application.Contracts",
+ "type": "Volo.CmsKit.Public.Ratings.CreateUpdateRatingInput",
+ "typeSimple": "Volo.CmsKit.Public.Ratings.CreateUpdateRatingInput",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "entityType",
+ "name": "entityType",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "entityId",
+ "name": "entityId",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.CmsKit.Public.Ratings.CreateUpdateRatingInput",
+ "typeSimple": "Volo.CmsKit.Public.Ratings.CreateUpdateRatingInput",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.CmsKit.Public.Ratings.RatingDto",
+ "typeSimple": "Volo.CmsKit.Public.Ratings.RatingDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.CmsKit.Public.Ratings.IRatingPublicAppService"
+ },
+ "DeleteAsyncByEntityTypeAndEntityId": {
+ "uniqueName": "DeleteAsyncByEntityTypeAndEntityId",
+ "name": "DeleteAsync",
+ "httpMethod": "DELETE",
+ "url": "api/cms-kit-public/ratings/{entityType}/{entityId}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "entityType",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "entityId",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "entityType",
+ "name": "entityType",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "entityId",
+ "name": "entityId",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.CmsKit.Public.Ratings.IRatingPublicAppService"
+ },
+ "GetGroupedStarCountsAsyncByEntityTypeAndEntityId": {
+ "uniqueName": "GetGroupedStarCountsAsyncByEntityTypeAndEntityId",
+ "name": "GetGroupedStarCountsAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit-public/ratings/{entityType}/{entityId}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "entityType",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "entityId",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "entityType",
+ "name": "entityType",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "entityId",
+ "name": "entityId",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Collections.Generic.List",
+ "typeSimple": "[Volo.CmsKit.Public.Ratings.RatingWithStarCountDto]"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.CmsKit.Public.Ratings.IRatingPublicAppService"
+ }
+ }
+ },
+ "Volo.CmsKit.Public.Pages.PagesPublicController": {
+ "controllerName": "PagesPublic",
+ "type": "Volo.CmsKit.Public.Pages.PagesPublicController",
+ "interfaces": [
+ {
+ "type": "Volo.CmsKit.Public.Pages.IPagePublicAppService"
+ }
+ ],
+ "actions": {
+ "FindBySlugAsyncBySlug": {
+ "uniqueName": "FindBySlugAsyncBySlug",
+ "name": "FindBySlugAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit-public/pages/{slug}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "slug",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "slug",
+ "name": "slug",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.CmsKit.Public.Pages.PageDto",
+ "typeSimple": "Volo.CmsKit.Public.Pages.PageDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.CmsKit.Public.Pages.IPagePublicAppService"
+ }
+ }
+ },
+ "Volo.CmsKit.Public.Menus.MenuItemPublicController": {
+ "controllerName": "MenuItemPublic",
+ "type": "Volo.CmsKit.Public.Menus.MenuItemPublicController",
+ "interfaces": [
+ {
+ "type": "Volo.CmsKit.Public.Menus.IMenuItemPublicAppService"
+ }
+ ],
+ "actions": {
+ "GetListAsync": {
+ "uniqueName": "GetListAsync",
+ "name": "GetListAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit-public/menu-items",
+ "supportedVersions": [],
+ "parametersOnMethod": [],
+ "parameters": [],
+ "returnValue": {
+ "type": "System.Collections.Generic.List",
+ "typeSimple": "[Volo.CmsKit.Menus.MenuItemDto]"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.CmsKit.Public.Menus.IMenuItemPublicAppService"
+ }
+ }
+ },
+ "Volo.CmsKit.Public.Comments.CommentPublicController": {
+ "controllerName": "CommentPublic",
+ "type": "Volo.CmsKit.Public.Comments.CommentPublicController",
+ "interfaces": [
+ {
+ "type": "Volo.CmsKit.Public.Comments.ICommentPublicAppService"
+ }
+ ],
+ "actions": {
+ "GetListAsyncByEntityTypeAndEntityId": {
+ "uniqueName": "GetListAsyncByEntityTypeAndEntityId",
+ "name": "GetListAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit-public/comments/{entityType}/{entityId}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "entityType",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "entityId",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "entityType",
+ "name": "entityType",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "entityId",
+ "name": "entityId",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Abp.Application.Dtos.ListResultDto",
+ "typeSimple": "Volo.Abp.Application.Dtos.ListResultDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.CmsKit.Public.Comments.ICommentPublicAppService"
+ },
+ "CreateAsyncByEntityTypeAndEntityIdAndInput": {
+ "uniqueName": "CreateAsyncByEntityTypeAndEntityIdAndInput",
+ "name": "CreateAsync",
+ "httpMethod": "POST",
+ "url": "api/cms-kit-public/comments/{entityType}/{entityId}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "entityType",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "entityId",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Public.Comments.CreateCommentInput, Volo.CmsKit.Public.Application.Contracts",
+ "type": "Volo.CmsKit.Public.Comments.CreateCommentInput",
+ "typeSimple": "Volo.CmsKit.Public.Comments.CreateCommentInput",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "entityType",
+ "name": "entityType",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "entityId",
+ "name": "entityId",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.CmsKit.Public.Comments.CreateCommentInput",
+ "typeSimple": "Volo.CmsKit.Public.Comments.CreateCommentInput",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.CmsKit.Public.Comments.CommentDto",
+ "typeSimple": "Volo.CmsKit.Public.Comments.CommentDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.CmsKit.Public.Comments.ICommentPublicAppService"
+ },
+ "UpdateAsyncByIdAndInput": {
+ "uniqueName": "UpdateAsyncByIdAndInput",
+ "name": "UpdateAsync",
+ "httpMethod": "PUT",
+ "url": "api/cms-kit-public/comments/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Public.Comments.UpdateCommentInput, Volo.CmsKit.Public.Application.Contracts",
+ "type": "Volo.CmsKit.Public.Comments.UpdateCommentInput",
+ "typeSimple": "Volo.CmsKit.Public.Comments.UpdateCommentInput",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.CmsKit.Public.Comments.UpdateCommentInput",
+ "typeSimple": "Volo.CmsKit.Public.Comments.UpdateCommentInput",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.CmsKit.Public.Comments.CommentDto",
+ "typeSimple": "Volo.CmsKit.Public.Comments.CommentDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.CmsKit.Public.Comments.ICommentPublicAppService"
+ },
+ "DeleteAsyncById": {
+ "uniqueName": "DeleteAsyncById",
+ "name": "DeleteAsync",
+ "httpMethod": "DELETE",
+ "url": "api/cms-kit-public/comments/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.CmsKit.Public.Comments.ICommentPublicAppService"
+ }
+ }
+ },
+ "Volo.CmsKit.Public.Blogs.BlogPostPublicController": {
+ "controllerName": "BlogPostPublic",
+ "type": "Volo.CmsKit.Public.Blogs.BlogPostPublicController",
+ "interfaces": [
+ {
+ "type": "Volo.CmsKit.Public.Blogs.IBlogPostPublicAppService"
+ }
+ ],
+ "actions": {
+ "GetAsyncByBlogSlugAndBlogPostSlug": {
+ "uniqueName": "GetAsyncByBlogSlugAndBlogPostSlug",
+ "name": "GetAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit-public/blog-posts/{blogSlug}/{blogPostSlug}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "blogSlug",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "blogPostSlug",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "blogSlug",
+ "name": "blogSlug",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "blogPostSlug",
+ "name": "blogPostSlug",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.CmsKit.Public.Blogs.BlogPostPublicDto",
+ "typeSimple": "Volo.CmsKit.Public.Blogs.BlogPostPublicDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.CmsKit.Public.Blogs.IBlogPostPublicAppService"
+ },
+ "GetListAsyncByBlogSlugAndInput": {
+ "uniqueName": "GetListAsyncByBlogSlugAndInput",
+ "name": "GetListAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit-public/blog-posts/{blogSlug}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "blogSlug",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "input",
+ "typeAsString": "Volo.Abp.Application.Dtos.PagedAndSortedResultRequestDto, Volo.Abp.Ddd.Application.Contracts",
+ "type": "Volo.Abp.Application.Dtos.PagedAndSortedResultRequestDto",
+ "typeSimple": "Volo.Abp.Application.Dtos.PagedAndSortedResultRequestDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "blogSlug",
+ "name": "blogSlug",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "SkipCount",
+ "jsonName": null,
+ "type": "System.Int32",
+ "typeSimple": "number",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "MaxResultCount",
+ "jsonName": null,
+ "type": "System.Int32",
+ "typeSimple": "number",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "Sorting",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Abp.Application.Dtos.PagedResultDto",
+ "typeSimple": "Volo.Abp.Application.Dtos.PagedResultDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.CmsKit.Public.Blogs.IBlogPostPublicAppService"
+ }
+ }
+ },
+ "Volo.CmsKit.MediaDescriptors.MediaDescriptorController": {
+ "controllerName": "MediaDescriptor",
+ "type": "Volo.CmsKit.MediaDescriptors.MediaDescriptorController",
+ "interfaces": [
+ {
+ "type": "Volo.CmsKit.MediaDescriptors.IMediaDescriptorAppService"
+ }
+ ],
+ "actions": {
+ "DownloadAsyncById": {
+ "uniqueName": "DownloadAsyncById",
+ "name": "DownloadAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit/media/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Abp.Content.RemoteStreamContent",
+ "typeSimple": "Volo.Abp.Content.RemoteStreamContent"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.CmsKit.MediaDescriptors.IMediaDescriptorAppService"
+ }
+ }
+ },
+ "Volo.CmsKit.Blogs.BlogFeatureController": {
+ "controllerName": "BlogFeature",
+ "type": "Volo.CmsKit.Blogs.BlogFeatureController",
+ "interfaces": [
+ {
+ "type": "Volo.CmsKit.Blogs.IBlogFeatureAppService"
+ }
+ ],
+ "actions": {
+ "GetOrDefaultAsyncByBlogIdAndFeatureName": {
+ "uniqueName": "GetOrDefaultAsyncByBlogIdAndFeatureName",
+ "name": "GetOrDefaultAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit/blogs/{blogId}/features/{featureName}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "blogId",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ },
+ {
+ "name": "featureName",
+ "typeAsString": "System.String, System.Private.CoreLib",
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "blogId",
+ "name": "blogId",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ },
+ {
+ "nameOnMethod": "featureName",
+ "name": "featureName",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.CmsKit.Blogs.BlogFeatureDto",
+ "typeSimple": "Volo.CmsKit.Blogs.BlogFeatureDto"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.CmsKit.Blogs.IBlogFeatureAppService"
+ }
+ }
+ }
+ }
+ }
+ },
+ "types": {}
+}
\ No newline at end of file
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/Volo/CmsKit/Admin/CmsKitAdminHttpApiClientModule.cs b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/Volo/CmsKit/Admin/CmsKitAdminHttpApiClientModule.cs
index 586dede103..7cf32ec051 100644
--- a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/Volo/CmsKit/Admin/CmsKitAdminHttpApiClientModule.cs
+++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/Volo/CmsKit/Admin/CmsKitAdminHttpApiClientModule.cs
@@ -1,6 +1,7 @@
using Microsoft.Extensions.DependencyInjection;
using Volo.Abp.Http.Client;
using Volo.Abp.Modularity;
+using Volo.Abp.VirtualFileSystem;
namespace Volo.CmsKit.Admin
{
@@ -11,10 +12,15 @@ namespace Volo.CmsKit.Admin
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
- context.Services.AddHttpClientProxies(
+ context.Services.AddStaticHttpClientProxies(
typeof(CmsKitAdminApplicationContractsModule).Assembly,
CmsKitAdminRemoteServiceConsts.RemoteServiceName
);
+
+ Configure(options =>
+ {
+ options.FileSets.AddEmbedded();
+ });
}
}
}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.HttpApi.Client/Volo/CmsKit/CmsKitCommonHttpApiClientModule.cs b/modules/cms-kit/src/Volo.CmsKit.Common.HttpApi.Client/Volo/CmsKit/CmsKitCommonHttpApiClientModule.cs
index e46e347d22..8b5bdfff73 100644
--- a/modules/cms-kit/src/Volo.CmsKit.Common.HttpApi.Client/Volo/CmsKit/CmsKitCommonHttpApiClientModule.cs
+++ b/modules/cms-kit/src/Volo.CmsKit.Common.HttpApi.Client/Volo/CmsKit/CmsKitCommonHttpApiClientModule.cs
@@ -12,7 +12,7 @@ namespace Volo.CmsKit
{
public override void ConfigureServices(ServiceConfigurationContext context)
{
- context.Services.AddHttpClientProxies(
+ context.Services.AddStaticHttpClientProxies(
typeof(CmsKitCommonApplicationContractsModule).Assembly,
CmsKitCommonRemoteServiceConsts.RemoteServiceName
);
diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/BlogFeatureClientProxy.Generated.cs b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/BlogFeatureClientProxy.Generated.cs
new file mode 100644
index 0000000000..827c11576f
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/BlogFeatureClientProxy.Generated.cs
@@ -0,0 +1,19 @@
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Http.Client;
+using Volo.Abp.Http.Modeling;
+using Volo.CmsKit.Blogs;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Blogs.ClientProxies
+{
+ public partial class BlogFeatureClientProxy
+ {
+ public virtual async Task GetOrDefaultAsync(Guid blogId, string featureName)
+ {
+ return await RequestAsync(nameof(GetOrDefaultAsync), blogId, featureName);
+ }
+
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/BlogFeatureClientProxy.cs b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/BlogFeatureClientProxy.cs
new file mode 100644
index 0000000000..7cd4c43902
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/BlogFeatureClientProxy.cs
@@ -0,0 +1,13 @@
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.ClientProxying;
+using Volo.CmsKit.Blogs;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Blogs.ClientProxies
+{
+ [Dependency(ReplaceServices = true)]
+ [ExposeServices(typeof(IBlogFeatureAppService), typeof(BlogFeatureClientProxy))]
+ public partial class BlogFeatureClientProxy : ClientProxyBase, IBlogFeatureAppService
+ {
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/BlogPostPublicClientProxy.Generated.cs b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/BlogPostPublicClientProxy.Generated.cs
new file mode 100644
index 0000000000..8395433662
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/BlogPostPublicClientProxy.Generated.cs
@@ -0,0 +1,24 @@
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Http.Client;
+using Volo.Abp.Http.Modeling;
+using Volo.CmsKit.Public.Blogs;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Public.Blogs.ClientProxies
+{
+ public partial class BlogPostPublicClientProxy
+ {
+ public virtual async Task GetAsync(string blogSlug, string blogPostSlug)
+ {
+ return await RequestAsync(nameof(GetAsync), blogSlug, blogPostSlug);
+ }
+
+ public virtual async Task> GetListAsync(string blogSlug, PagedAndSortedResultRequestDto input)
+ {
+ return await RequestAsync>(nameof(GetListAsync), blogSlug, input);
+ }
+
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/BlogPostPublicClientProxy.cs b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/BlogPostPublicClientProxy.cs
new file mode 100644
index 0000000000..e666e333d8
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/BlogPostPublicClientProxy.cs
@@ -0,0 +1,13 @@
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.ClientProxying;
+using Volo.CmsKit.Public.Blogs;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Public.Blogs.ClientProxies
+{
+ [Dependency(ReplaceServices = true)]
+ [ExposeServices(typeof(IBlogPostPublicAppService), typeof(BlogPostPublicClientProxy))]
+ public partial class BlogPostPublicClientProxy : ClientProxyBase, IBlogPostPublicAppService
+ {
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/CommentPublicClientProxy.Generated.cs b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/CommentPublicClientProxy.Generated.cs
new file mode 100644
index 0000000000..2bb2b3a73f
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/CommentPublicClientProxy.Generated.cs
@@ -0,0 +1,34 @@
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Http.Client;
+using Volo.Abp.Http.Modeling;
+using Volo.CmsKit.Public.Comments;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Public.Comments.ClientProxies
+{
+ public partial class CommentPublicClientProxy
+ {
+ public virtual async Task> GetListAsync(string entityType, string entityId)
+ {
+ return await RequestAsync>(nameof(GetListAsync), entityType, entityId);
+ }
+
+ public virtual async Task CreateAsync(string entityType, string entityId, CreateCommentInput input)
+ {
+ return await RequestAsync(nameof(CreateAsync), entityType, entityId, input);
+ }
+
+ public virtual async Task UpdateAsync(Guid id, UpdateCommentInput input)
+ {
+ return await RequestAsync(nameof(UpdateAsync), id, input);
+ }
+
+ public virtual async Task DeleteAsync(Guid id)
+ {
+ await RequestAsync(nameof(DeleteAsync), id);
+ }
+
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/CommentPublicClientProxy.cs b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/CommentPublicClientProxy.cs
new file mode 100644
index 0000000000..8cd4e70966
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/CommentPublicClientProxy.cs
@@ -0,0 +1,13 @@
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.ClientProxying;
+using Volo.CmsKit.Public.Comments;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Public.Comments.ClientProxies
+{
+ [Dependency(ReplaceServices = true)]
+ [ExposeServices(typeof(ICommentPublicAppService), typeof(CommentPublicClientProxy))]
+ public partial class CommentPublicClientProxy : ClientProxyBase, ICommentPublicAppService
+ {
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/MediaDescriptorClientProxy.Generated.cs b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/MediaDescriptorClientProxy.Generated.cs
new file mode 100644
index 0000000000..e54d91e9db
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/MediaDescriptorClientProxy.Generated.cs
@@ -0,0 +1,20 @@
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Http.Client;
+using Volo.Abp.Http.Modeling;
+using Volo.CmsKit.MediaDescriptors;
+using Volo.Abp.Content;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.MediaDescriptors.ClientProxies
+{
+ public partial class MediaDescriptorClientProxy
+ {
+ public virtual async Task DownloadAsync(Guid id)
+ {
+ return await RequestAsync(nameof(DownloadAsync), id);
+ }
+
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/MediaDescriptorClientProxy.cs b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/MediaDescriptorClientProxy.cs
new file mode 100644
index 0000000000..2ba43a5091
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/MediaDescriptorClientProxy.cs
@@ -0,0 +1,13 @@
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.ClientProxying;
+using Volo.CmsKit.MediaDescriptors;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.MediaDescriptors.ClientProxies
+{
+ [Dependency(ReplaceServices = true)]
+ [ExposeServices(typeof(IMediaDescriptorAppService), typeof(MediaDescriptorClientProxy))]
+ public partial class MediaDescriptorClientProxy : ClientProxyBase, IMediaDescriptorAppService
+ {
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/MenuItemPublicClientProxy.Generated.cs b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/MenuItemPublicClientProxy.Generated.cs
new file mode 100644
index 0000000000..9d05375900
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/MenuItemPublicClientProxy.Generated.cs
@@ -0,0 +1,21 @@
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Http.Client;
+using Volo.Abp.Http.Modeling;
+using Volo.CmsKit.Public.Menus;
+using System.Collections.Generic;
+using Volo.CmsKit.Menus;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Public.Menus.ClientProxies
+{
+ public partial class MenuItemPublicClientProxy
+ {
+ public virtual async Task> GetListAsync()
+ {
+ return await RequestAsync>(nameof(GetListAsync));
+ }
+
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/MenuItemPublicClientProxy.cs b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/MenuItemPublicClientProxy.cs
new file mode 100644
index 0000000000..aeef4e9a28
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/MenuItemPublicClientProxy.cs
@@ -0,0 +1,13 @@
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.ClientProxying;
+using Volo.CmsKit.Public.Menus;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Public.Menus.ClientProxies
+{
+ [Dependency(ReplaceServices = true)]
+ [ExposeServices(typeof(IMenuItemPublicAppService), typeof(MenuItemPublicClientProxy))]
+ public partial class MenuItemPublicClientProxy : ClientProxyBase, IMenuItemPublicAppService
+ {
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/PagesPublicClientProxy.Generated.cs b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/PagesPublicClientProxy.Generated.cs
new file mode 100644
index 0000000000..eb0a2d581f
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/PagesPublicClientProxy.Generated.cs
@@ -0,0 +1,19 @@
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Http.Client;
+using Volo.Abp.Http.Modeling;
+using Volo.CmsKit.Public.Pages;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Public.Pages.ClientProxies
+{
+ public partial class PagesPublicClientProxy
+ {
+ public virtual async Task FindBySlugAsync(string slug)
+ {
+ return await RequestAsync(nameof(FindBySlugAsync), slug);
+ }
+
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/PagesPublicClientProxy.cs b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/PagesPublicClientProxy.cs
new file mode 100644
index 0000000000..2da3c5443e
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/PagesPublicClientProxy.cs
@@ -0,0 +1,13 @@
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.ClientProxying;
+using Volo.CmsKit.Public.Pages;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Public.Pages.ClientProxies
+{
+ [Dependency(ReplaceServices = true)]
+ [ExposeServices(typeof(IPagePublicAppService), typeof(PagesPublicClientProxy))]
+ public partial class PagesPublicClientProxy : ClientProxyBase, IPagePublicAppService
+ {
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/RatingPublicClientProxy.Generated.cs b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/RatingPublicClientProxy.Generated.cs
new file mode 100644
index 0000000000..849dc13293
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/RatingPublicClientProxy.Generated.cs
@@ -0,0 +1,30 @@
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Http.Client;
+using Volo.Abp.Http.Modeling;
+using Volo.CmsKit.Public.Ratings;
+using System.Collections.Generic;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Public.Ratings.ClientProxies
+{
+ public partial class RatingPublicClientProxy
+ {
+ public virtual async Task CreateAsync(string entityType, string entityId, CreateUpdateRatingInput input)
+ {
+ return await RequestAsync(nameof(CreateAsync), entityType, entityId, input);
+ }
+
+ public virtual async Task DeleteAsync(string entityType, string entityId)
+ {
+ await RequestAsync(nameof(DeleteAsync), entityType, entityId);
+ }
+
+ public virtual async Task> GetGroupedStarCountsAsync(string entityType, string entityId)
+ {
+ return await RequestAsync>(nameof(GetGroupedStarCountsAsync), entityType, entityId);
+ }
+
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/RatingPublicClientProxy.cs b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/RatingPublicClientProxy.cs
new file mode 100644
index 0000000000..3a6119ba07
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/RatingPublicClientProxy.cs
@@ -0,0 +1,13 @@
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.ClientProxying;
+using Volo.CmsKit.Public.Ratings;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Public.Ratings.ClientProxies
+{
+ [Dependency(ReplaceServices = true)]
+ [ExposeServices(typeof(IRatingPublicAppService), typeof(RatingPublicClientProxy))]
+ public partial class RatingPublicClientProxy : ClientProxyBase, IRatingPublicAppService
+ {
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/ReactionPublicClientProxy.Generated.cs b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/ReactionPublicClientProxy.Generated.cs
new file mode 100644
index 0000000000..908434d2d7
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/ReactionPublicClientProxy.Generated.cs
@@ -0,0 +1,29 @@
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Http.Client;
+using Volo.Abp.Http.Modeling;
+using Volo.CmsKit.Public.Reactions;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Public.Reactions.ClientProxies
+{
+ public partial class ReactionPublicClientProxy
+ {
+ public virtual async Task> GetForSelectionAsync(string entityType, string entityId)
+ {
+ return await RequestAsync>(nameof(GetForSelectionAsync), entityType, entityId);
+ }
+
+ public virtual async Task CreateAsync(string entityType, string entityId, string reaction)
+ {
+ await RequestAsync(nameof(CreateAsync), entityType, entityId, reaction);
+ }
+
+ public virtual async Task DeleteAsync(string entityType, string entityId, string reaction)
+ {
+ await RequestAsync(nameof(DeleteAsync), entityType, entityId, reaction);
+ }
+
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/ReactionPublicClientProxy.cs b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/ReactionPublicClientProxy.cs
new file mode 100644
index 0000000000..90e58fe24c
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/ReactionPublicClientProxy.cs
@@ -0,0 +1,13 @@
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.ClientProxying;
+using Volo.CmsKit.Public.Reactions;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Public.Reactions.ClientProxies
+{
+ [Dependency(ReplaceServices = true)]
+ [ExposeServices(typeof(IReactionPublicAppService), typeof(ReactionPublicClientProxy))]
+ public partial class ReactionPublicClientProxy : ClientProxyBase, IReactionPublicAppService
+ {
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/TagPublicClientProxy.Generated.cs b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/TagPublicClientProxy.Generated.cs
new file mode 100644
index 0000000000..02856ba06e
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/TagPublicClientProxy.Generated.cs
@@ -0,0 +1,20 @@
+using System;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Dtos;
+using Volo.Abp.Http.Client;
+using Volo.Abp.Http.Modeling;
+using Volo.CmsKit.Tags;
+using System.Collections.Generic;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Public.Tags.ClientProxies
+{
+ public partial class TagPublicClientProxy
+ {
+ public virtual async Task> GetAllRelatedTagsAsync(string entityType, string entityId)
+ {
+ return await RequestAsync>(nameof(GetAllRelatedTagsAsync), entityType, entityId);
+ }
+
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/TagPublicClientProxy.cs b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/TagPublicClientProxy.cs
new file mode 100644
index 0000000000..3a07bcf166
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/TagPublicClientProxy.cs
@@ -0,0 +1,13 @@
+using Volo.Abp.DependencyInjection;
+using Volo.Abp.Http.Client.ClientProxying;
+using Volo.CmsKit.Tags;
+
+// ReSharper disable once CheckNamespace
+namespace Volo.CmsKit.Public.Tags.ClientProxies
+{
+ [Dependency(ReplaceServices = true)]
+ [ExposeServices(typeof(ITagAppService), typeof(TagPublicClientProxy))]
+ public partial class TagPublicClientProxy : ClientProxyBase, ITagAppService
+ {
+ }
+}
diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/cms-kit-generate-proxy.json b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/cms-kit-generate-proxy.json
new file mode 100644
index 0000000000..8e077ebbc5
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/ClientProxies/cms-kit-generate-proxy.json
@@ -0,0 +1,3028 @@
+{
+ "modules": {
+ "cms-kit": {
+ "rootPath": "cms-kit",
+ "remoteServiceName": "CmsKitAdmin",
+ "controllers": {
+ "Volo.CmsKit.Admin.Tags.EntityTagAdminController": {
+ "controllerName": "EntityTagAdmin",
+ "type": "Volo.CmsKit.Admin.Tags.EntityTagAdminController",
+ "interfaces": [
+ {
+ "type": "Volo.CmsKit.Admin.Tags.IEntityTagAdminAppService"
+ }
+ ],
+ "actions": {
+ "AddTagToEntityAsyncByInput": {
+ "uniqueName": "AddTagToEntityAsyncByInput",
+ "name": "AddTagToEntityAsync",
+ "httpMethod": "POST",
+ "url": "api/cms-kit-admin/entity-tags",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Admin.Tags.EntityTagCreateDto, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Tags.EntityTagCreateDto",
+ "typeSimple": "Volo.CmsKit.Admin.Tags.EntityTagCreateDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.CmsKit.Admin.Tags.EntityTagCreateDto",
+ "typeSimple": "Volo.CmsKit.Admin.Tags.EntityTagCreateDto",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.CmsKit.Admin.Tags.IEntityTagAdminAppService"
+ },
+ "RemoveTagFromEntityAsyncByInput": {
+ "uniqueName": "RemoveTagFromEntityAsyncByInput",
+ "name": "RemoveTagFromEntityAsync",
+ "httpMethod": "DELETE",
+ "url": "api/cms-kit-admin/entity-tags",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Admin.Tags.EntityTagRemoveDto, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Tags.EntityTagRemoveDto",
+ "typeSimple": "Volo.CmsKit.Admin.Tags.EntityTagRemoveDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "TagId",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "EntityType",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "EntityId",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.CmsKit.Admin.Tags.IEntityTagAdminAppService"
+ },
+ "SetEntityTagsAsyncByInput": {
+ "uniqueName": "SetEntityTagsAsyncByInput",
+ "name": "SetEntityTagsAsync",
+ "httpMethod": "PUT",
+ "url": "api/cms-kit-admin/entity-tags",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Admin.Tags.EntityTagSetDto, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Tags.EntityTagSetDto",
+ "typeSimple": "Volo.CmsKit.Admin.Tags.EntityTagSetDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.CmsKit.Admin.Tags.EntityTagSetDto",
+ "typeSimple": "Volo.CmsKit.Admin.Tags.EntityTagSetDto",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": null,
+ "implementFrom": "Volo.CmsKit.Admin.Tags.IEntityTagAdminAppService"
+ }
+ }
+ },
+ "Volo.CmsKit.Admin.Tags.TagAdminController": {
+ "controllerName": "TagAdmin",
+ "type": "Volo.CmsKit.Admin.Tags.TagAdminController",
+ "interfaces": [
+ {
+ "type": "Volo.CmsKit.Admin.Tags.ITagAdminAppService"
+ }
+ ],
+ "actions": {
+ "CreateAsyncByInput": {
+ "uniqueName": "CreateAsyncByInput",
+ "name": "CreateAsync",
+ "httpMethod": "POST",
+ "url": "api/cms-kit-admin/tags",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Admin.Tags.TagCreateDto, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Tags.TagCreateDto",
+ "typeSimple": "Volo.CmsKit.Admin.Tags.TagCreateDto",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "input",
+ "jsonName": null,
+ "type": "Volo.CmsKit.Admin.Tags.TagCreateDto",
+ "typeSimple": "Volo.CmsKit.Admin.Tags.TagCreateDto",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "Body",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.CmsKit.Tags.TagDto",
+ "typeSimple": "Volo.CmsKit.Tags.TagDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.Abp.Application.Services.ICreateAppService"
+ },
+ "DeleteAsyncById": {
+ "uniqueName": "DeleteAsyncById",
+ "name": "DeleteAsync",
+ "httpMethod": "DELETE",
+ "url": "api/cms-kit-admin/tags/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "System.Void",
+ "typeSimple": "System.Void"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.Abp.Application.Services.IDeleteAppService"
+ },
+ "GetAsyncById": {
+ "uniqueName": "GetAsyncById",
+ "name": "GetAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit-admin/tags/{id}",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "id",
+ "typeAsString": "System.Guid, System.Private.CoreLib",
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "id",
+ "name": "id",
+ "jsonName": null,
+ "type": "System.Guid",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": [],
+ "bindingSourceId": "Path",
+ "descriptorName": ""
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.CmsKit.Tags.TagDto",
+ "typeSimple": "Volo.CmsKit.Tags.TagDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.Abp.Application.Services.IReadOnlyAppService"
+ },
+ "GetListAsyncByInput": {
+ "uniqueName": "GetListAsyncByInput",
+ "name": "GetListAsync",
+ "httpMethod": "GET",
+ "url": "api/cms-kit-admin/tags",
+ "supportedVersions": [],
+ "parametersOnMethod": [
+ {
+ "name": "input",
+ "typeAsString": "Volo.CmsKit.Admin.Tags.TagGetListInput, Volo.CmsKit.Admin.Application.Contracts",
+ "type": "Volo.CmsKit.Admin.Tags.TagGetListInput",
+ "typeSimple": "Volo.CmsKit.Admin.Tags.TagGetListInput",
+ "isOptional": false,
+ "defaultValue": null
+ }
+ ],
+ "parameters": [
+ {
+ "nameOnMethod": "input",
+ "name": "Filter",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "Sorting",
+ "jsonName": null,
+ "type": "System.String",
+ "typeSimple": "string",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "SkipCount",
+ "jsonName": null,
+ "type": "System.Int32",
+ "typeSimple": "number",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ },
+ {
+ "nameOnMethod": "input",
+ "name": "MaxResultCount",
+ "jsonName": null,
+ "type": "System.Int32",
+ "typeSimple": "number",
+ "isOptional": false,
+ "defaultValue": null,
+ "constraintTypes": null,
+ "bindingSourceId": "ModelBinding",
+ "descriptorName": "input"
+ }
+ ],
+ "returnValue": {
+ "type": "Volo.Abp.Application.Dtos.PagedResultDto",
+ "typeSimple": "Volo.Abp.Application.Dtos.PagedResultDto"
+ },
+ "allowAnonymous": false,
+ "implementFrom": "Volo.Abp.Application.Services.IReadOnlyAppService