我正在尝试创建一个虚拟用户,并重定向到内容编辑器如下。
string userId = string.Format("{0}\\{1}", "sitecore", "testadmin");
var scUser = AuthenticationManager.BuildVirtualUser(userId, true);
scUser.RuntimeSettings.IsAdministrator = true;
scUser.RuntimeSettings.AddedRoles.Add(@"sitecore\Sitecore Client Authoring");
AuthenticationManager.Login(scUser);
string url = "/sitecore/shell/sitecore/content/Applications/Content Editor.aspx?id=%7b110D559F-DEA5-42EA-9C1C-8A5DF7E70EF9%7d&la=en&fo=%7b110D559F-DEA5-42EA-9C1C-8A5DF7E70EF9%7d";
url = string.IsNullOrEmpty(url) ? "/" : url;
HttpContext.Current.Response.Redirect(url, false);但它总是将用户重定向到sitecore/登录页面。
知道这里的问题是什么吗?
发布于 2016-04-13 17:00:05
有意思的。我不完全确定这种方法是不是受支持的方案。但是,工具集编辑器运行在"shell“网站上,这可能是您的问题所在。
试着把这段代码放在整个代码块的周围。
using(new SiteContextSwitcher("shell")) {
}发布于 2017-10-18 20:56:11
您需要更改:
AuthenticationManager.Login(scUser);
至
AuthenticationManager.LoginVirtualUser(scUser);
https://stackoverflow.com/questions/30614691
复制相似问题