Я пишу приложение на основе нескольких приложений, и я хочу загрузить пользовательский вид из базы данных на URL-адрес (арендатор).Устранение идентификатора арендатора в VirtualPathProvider MVC5
I типа https://corporate.myapp.local/ в браузере, но в FileExists
методе HttpContext.Current.Request.Url
дают мне http://127.0.0.1/ он не говорит мне, какой домен это так я могу получить файл базы на домен и разрешить tenantid
public class ViewPathProvider : VirtualPathProvider, ICustomVirtualPathProvider
{
VirtualPathProvider ICustomVirtualPathProvider.Instance => this;
private readonly ILogger _logger;
private readonly IThemeService _themeService;
private readonly ISellutionSession _sellutionSession;
public ViewPathProvider(ILogger logger, IThemeService themeService, ISellutionSession sellutionSession)
{
_logger = logger;
_themeService = themeService;
_sellutionSession = sellutionSession;
}
public override bool FileExists(string virtualPath)
{
_logger.Log($"CurrentCompanyId: {_sellutionSession.GetCurrentCompany(HttpContext.Current.Request.Url).CompanyId}");
var isViewExist = Pages.IsExistByVirtualPath(virtualPath);
return isViewExist || Previous.FileExists(virtualPath);
}
Я сделал что-то похожее на это, однако в контроллере просто получаю URL-адрес и использую его для определения идентификатора арендатора – Saravanan