Skip to content

Commit

Permalink
🧭 fixed dynamic api controller set keep verb invalid.
Browse files Browse the repository at this point in the history
  • Loading branch information
MonkSoul committed Nov 6, 2020
1 parent 71dbc99 commit db60b6d
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ private void ConfigureActionName(ActionModel action, ApiDescriptionSettingsAttri
action.ActionName = ConfigureControllerAndActionName(apiDescriptionSettings, action.ActionName, _dynamicApiControllerSettings.AbandonActionAffixes, (tempName) =>
{
// 处理动作方法名称谓词
if (apiDescriptionSettings?.KeepVerb != true)
if (!CheckIsKeepVerb(apiDescriptionSettings, controllerApiDescriptionSettings))
{
var words = Penetrates.SplitCamelCase(tempName);
var verbKey = words.First().ToLower();
Expand Down Expand Up @@ -440,6 +440,27 @@ private bool CheckIsKeepName(ApiDescriptionSettingsAttribute apiDescriptionSetti
return _dynamicApiControllerSettings?.KeepName == true || isKeepName;
}

/// <summary>
/// 检查是否设置了 KeepVerb 参数
/// </summary>
/// <param name="apiDescriptionSettings"></param>
/// <param name="controllerApiDescriptionSettings"></param>
/// <returns></returns>
private bool CheckIsKeepVerb(ApiDescriptionSettingsAttribute apiDescriptionSettings, ApiDescriptionSettingsAttribute controllerApiDescriptionSettings)
{
var isKeepVerb = false;
if (controllerApiDescriptionSettings == null)
{
if (apiDescriptionSettings?.KeepVerb == true) isKeepVerb = true;
}
else
{
if (apiDescriptionSettings == null && controllerApiDescriptionSettings?.KeepVerb == true) isKeepVerb = true;
}

return _dynamicApiControllerSettings?.KeepVerb == true || isKeepVerb;
}

/// <summary>
/// 判断切割命名参数是否配置
/// </summary>
Expand Down
2 changes: 1 addition & 1 deletion framework/Fur/Fur.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
<RepositoryUrl>https://gitee.com/monksoul/Fur</RepositoryUrl>
<RepositoryType>Gitee</RepositoryType>
<PackageLicenseExpression>Apache-2.0</PackageLicenseExpression>
<Version>1.0.0-rc.final.85</Version>
<Version>1.0.0-rc.final.86</Version>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<PackageIcon>icon.png</PackageIcon>
</PropertyGroup>
Expand Down
8 changes: 8 additions & 0 deletions framework/Fur/Fur.xml
Original file line number Diff line number Diff line change
Expand Up @@ -19796,6 +19796,14 @@
<param name="controllerApiDescriptionSettings"></param>
<returns></returns>
</member>
<member name="M:Fur.DynamicApiController.DynamicApiControllerApplicationModelConvention.CheckIsKeepVerb(Fur.DynamicApiController.ApiDescriptionSettingsAttribute,Fur.DynamicApiController.ApiDescriptionSettingsAttribute)">
<summary>
检查是否设置了 KeepVerb 参数
</summary>
<param name="apiDescriptionSettings"></param>
<param name="controllerApiDescriptionSettings"></param>
<returns></returns>
</member>
<member name="M:Fur.DynamicApiController.DynamicApiControllerApplicationModelConvention.CheckIsSplitCamelCase(Fur.DynamicApiController.ApiDescriptionSettingsAttribute,Fur.DynamicApiController.ApiDescriptionSettingsAttribute)">
<summary>
判断切割命名参数是否配置
Expand Down

0 comments on commit db60b6d

Please sign in to comment.