我正在开发lightswitch应用程序。
我打开一个从DesktopClient到服务器项目的MVC视图页面,服务器项目是我的MVC项目。
此代码用于打开或重定向到DesktopClient查看页面。
Microsoft.LightSwitch.Threading.Dispatchers.Main.BeginInvoke(() =>
{
if (AutomationFactory.IsAvailable)
{
dynamic shell = AutomationFactory.CreateObject("Shell.Application");
shell.ShellExecute("http://localhost:39360/Controller/Index");
}
else if (!System.Windows.Application.Current.IsRunningOutOfBrowser)
{
HtmlPage.Window.Navigate(new Uri("http://localhost:39360/Controller/Index"), "_blank");
}
else
{
throw new InvalidOperationException();
}
});
仍然正常工作,因为现在应用于本地主机。但是,在我的应用程序主机之后,我不知道域名或主机名是什么。所以我想要动态主机名
您能否建议一下www.example.com
的最佳选择。
然后我将连接/Search/Index
。
你的回答会很明显:)
谢谢, Jatin
答案 0 :(得分:0)
您应该能够使用System.Windows.Application.Current.Host.Source在运行时确定主机名。该对象包含与当前运行的应用程序相关的大量属性,例如:
Microsoft.LightSwitch.Threading.Dispatchers.Main.BeginInvoke(() =>
{
System.Windows.MessageBox.Show(System.Windows.Application.Current.Host.Source.Host);
});