Hi,
This is my test code,
public class MyPictureManagementGroupViewComponent: AbpViewComponent
{
private readonly IProfileAppService _profileAppService;
public MyPictureManagementGroupViewComponent(IProfileAppService profileAppService)
{
_profileAppService = profileAppService;
}
public virtual async Task<IViewComponentResult> InvokeAsync()
{
var profile = await _profileAppService.GetAsync();
return View("~/Pages/Account/Default.cshtml", profile);
}
}
@inject IHtmlLocalizer<AccountResource> L
@inject ICurrentUser CurrentUser
@using Microsoft.AspNetCore.Mvc.Localization
@using Microsoft.AspNetCore.Mvc.TagHelpers
@using Volo.Abp.Account.Localization
@using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Button
@using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Form
@using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap.TagHelpers.Grid
@using Volo.Abp.Data
@using Volo.Abp.Users
@model Volo.Abp.Account.ProfileDto
<input id="CurrentUserId" value="@CurrentUser.GetId()" hidden/>
<form method="post" id="MyPersonalSettingsForm">
<abp-input asp-for="UserName"/>
<abp-row>
<abp-column size-md="_6">
<abp-input asp-for="Name"/>
</abp-column>
<abp-column size-md="_6">
<abp-input asp-for="Surname"/>
</abp-column>
</abp-row>
<label>MiddleName</label>
<input type="text" class="form-control" value="@(Model.GetProperty<string>("MiddleName"))" id="MiddleName"/>
<abp-input asp-for="Email"/>
<abp-input asp-for="PhoneNumber"/>
<abp-button type="submit" button-type="Primary" text="@L["Submit"].Value"/>
</form>
(function ($) {
$(function () {
var l = abp.localization.getResource("AbpAccount");
var _profileService = volo.abp.account.profile;
$("#MyPersonalSettingsForm").submit(function (e) {
e.preventDefault();
if (!$("#MyPersonalSettingsForm").valid()) {
return false;
}
var input = $("#MyPersonalSettingsForm").serializeFormToObject();
input.ExtraProperties = {
"MiddleName" :$("#MiddleName").val()
}
_profileService.update(input).then(function (result) {
abp.notify.success(l("PersonalSettingsSaved"));
});
});
});
})(jQuery);
public class TestModule: ...
{
private static readonly OneTimeRunner OneTimeRunner = new OneTimeRunner();
public override void PostConfigureServices(ServiceConfigurationContext context)
{
OneTimeRunner.Run(() =>
{
ModuleExtensionConfigurationHelper.ApplyEntityConfigurationToApi(
IdentityModuleExtensionConsts.ModuleName,
IdentityModuleExtensionConsts.EntityNames.User,
getApiTypes: new[] { typeof(IdentityUserDto), typeof(ProfileDto) },
createApiTypes: new[] { typeof(IdentityUserCreateDto) },
updateApiTypes: new[] { typeof(IdentityUserUpdateDto) , typeof(UpdateProfileDto)}
);
});
}
.......
}
Hi,
After my check, you don't need to type the secret on the swagger UI.
Because the swagger client type is public. this is designed by Openiddict.
Of course, you can change it just like you did if you want use the client secret,
Hi,
Could you share the steps to reproduce? thanks.
Hi,
You can open the saas page, and click the manage hosts feature button,to enable the OAuth login feature.
ok.
I will check it out.
You can check the suite logs.
You will find a message like this:
Request finished HTTP/1.1 POST http://localhost:3000/api/abpSuite/updatePackagesInSolution?solutionPath=...
I guess it is an issue of the project yes, I can not share it, and don't think it will be easy to reproduce it...
As You know, we need to reproduce it then we can fix it, however, your ticket is refunded, and we can leave the question open if you find a way to reproduce it, you can share the steps with us.
Hi,
I guess it's a problem with your project, could you share a project that can reproduce the problem with me and I will check it, shiwei.liang@volosoft.com
thanks.
Hi,
How can I create BackgroundJob To execute just once (if an exception occurred) make it abandoned "true" and don't retry the job.
See: https://docs.abp.io/en/abp/latest/Background-Jobs#configuration
You can set the DefaultTimeout to 0 of AbpBackgroundJobWorkerOptions
How can I remove old abandoned jobs after 1 day.
You can create a background worker to remove abandoned jobs. see: https://docs.abp.io/en/abp/latest/Background-Workers
Hi,
It's on our roadmap, it will available in the feature.