您好我正在使用WPF应用程序,其中我有一个WPF浏览器控件导航到URL“http:....”,它取得了Windows凭据。
问题是:当我复制粘贴URL时,它只是执行身份验证并正常工作。但是当从WPF Web浏览器导航时,它并没有获得Windows的信誉。
public void StartNavigation()
{
if (!String.IsNullOrEmpty(URL) && webBrowser.Source == null)
webBrowser.Navigate(new Uri(URL));
}
<UserControl x:Class="Slb.iDistrict.Prism.Module.JobEmbeddedBrowser.View.JobEmbeddedBrowserView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d" Loaded="UserControl_Loaded"
d:DesignHeight="300" d:DesignWidth="300">
<Grid>
<WebBrowser Name="webBrowser"/>
</Grid>
UserControl_Loaded&GT; Event将调用StartNavigation()方法。 我的网址看起来像这样:“http://www.test.cmp.com/App/Login/SingleSignon.aspx?Screen=sample&BL=cc&JN=12345” 当我执行导航我的Browser.Source重置为该站点的某个default.aspx页面。我认为这是因为获取Windows身份验证信息失败。 我试图在网上找到一些帮助,但没有找到合适的结果。
问题是什么?在哪里?
答案 0 :(得分:0)
WPF Web浏览器有错误:它在'#'之后忽略了URL部分。也许auth服务会将您重定向到url中带有“#”的页面,并且此重定向失败。例如,vk.com中的身份验证无效。