fix(client-controller): single constructor with IHtmlLocalizer
The partial class ClientController had two constructors declared across ClientController.cs and ClientController.Collections.cs. ASP.NET Core DI failed to pick one at request time with: System.InvalidOperationException: Multiple constructors accepting all given argument types have been found in type 'Yavsc.Controllers.ClientController'. Move IHtmlLocalizer<ClientController> into the primary constructor in ClientController.cs and drop the duplicate one in ClientController.Collections.cs. The Collections partial now keeps only its readonly field and action methods; the constructor and field assignment are unified on the main file. Also add the missing 'using Microsoft.AspNetCore.Mvc.Localization;' to ClientController.cs so IHtmlLocalizer resolves.
This commit is contained in:
parent
ecac359344
commit
6aaff74082
13 changed files with 582 additions and 23 deletions
|
|
@ -27,12 +27,8 @@ public partial class ClientController
|
|||
|
||||
readonly IHtmlLocalizer _localizer;
|
||||
|
||||
public ClientController(
|
||||
IHtmlLocalizer<ClientController> localizer
|
||||
)
|
||||
{
|
||||
_localizer = localizer;
|
||||
}
|
||||
// ClientController has a single constructor declared in
|
||||
// ClientController.cs; this partial shares its fields.
|
||||
|
||||
|
||||
[HttpGet]
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@ using IdentityServer8.EntityFramework.Entities;
|
|||
using IdentityServer8.EntityFramework.Stores;
|
||||
using Microsoft.AspNetCore.Authorization;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using Microsoft.AspNetCore.Mvc.Localization;
|
||||
using Microsoft.AspNetCore.Mvc.Rendering;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.Extensions.Options;
|
||||
|
|
@ -21,7 +22,8 @@ namespace Yavsc.Controllers
|
|||
|
||||
public ClientController(
|
||||
ApplicationDbContext dbContext,
|
||||
ClientStore clientStore, IOptions<SiteSettings> siteSettingsOptions
|
||||
ClientStore clientStore, IOptions<SiteSettings> siteSettingsOptions,
|
||||
IHtmlLocalizer<ClientController> localizer
|
||||
|
||||
|
||||
)
|
||||
|
|
@ -29,6 +31,7 @@ namespace Yavsc.Controllers
|
|||
this.dbContext = dbContext;
|
||||
this.clientStore = clientStore;
|
||||
this.siteSettings = siteSettingsOptions.Value;
|
||||
_localizer = localizer;
|
||||
}
|
||||
|
||||
// GET: Client
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue