Asp.net(核心)-导航到多个URL
使用Asp.net(核心)-导航到多个URL,asp.net,razor,asp.net-core-mvc,response.redirect,Asp.net,Razor,Asp.net Core Mvc,Response.redirect,使用自定义URL协议我为自己设置了一个名为更新程序的URL,这意味着当我调用以下控制器时 第一个例子: public IActionResult Launch() { return Redirect("Updater:"); } 它在我的机器上运行一个.exe文件。然而,我想重定向我的网页到主页之后。应该是这样的 第二个例子: public IActionResult Launch() { Redirect("Updater:"); // launch my applicati
自定义URL协议
我为自己设置了一个名为更新程序的URL,这意味着当我调用以下控制器时
第一个例子:
public IActionResult Launch()
{
return Redirect("Updater:");
}
它在我的机器上运行一个.exe文件。然而,我想重定向我的网页到主页之后。应该是这样的
第二个例子:
public IActionResult Launch()
{
Redirect("Updater:"); // launch my application
return View("Index"); // and return to homepage
}
<a href1="@($"ETravelerUpdater:")" href2="@Url.Action("Index", "Home")">
<img data-src="holder.js/100px280/thumb?theme=vine">
</a>
或者在我看来是这样的
第三个例子:
public IActionResult Launch()
{
Redirect("Updater:"); // launch my application
return View("Index"); // and return to homepage
}
<a href1="@($"ETravelerUpdater:")" href2="@Url.Action("Index", "Home")">
<img data-src="holder.js/100px280/thumb?theme=vine">
</a>
有没有一个简单的方法可以做到这一点
编辑:第二个和第三个示例中显示的代码不起作用,它只是给我一个想法,我试图完成什么。没有看到更新程序:操作,我对它的功能做了一些假设。无论哪种方式,这都应该让您了解如何使用javascript从客户端处理多个重定向
<script>
function myFunction() {
window.open('MyUpdaterLink.com', '_blank'); // opens in new tab
window.location.href = "MyIndexLink.com"; // opens in current window
}
</script>
<button onclick="myFunction()">
<img data-src="holder.js/100px280/thumb?theme=vine">
</button>
函数myFunction(){
open('MyUpdaterLink.com','u blank');//在新选项卡中打开
window.location.href=“MyIndexLink.com”;//在当前窗口中打开
}
除此之外,我想提供一个答案,允许用户使用javascript
在同一选项卡上导航到多个URL
@model LaunchViewModel
<a href="javascript:Launch('ETravelerUpdater:|@Model.EmployeeName|SalesQuotes|@Model.AccessLevel')">
<img data-src="holder.js/100px280/thumb?theme=sky&text=Sales%20Quotes" alt="Card image cap">
</a>
<script>
async function Launch(url) {
window.location.href = url;
await sleep(1000);
window.location.href = "./";
}
function sleep(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
}
</script>
@model启动视图模型
异步函数启动(url){
window.location.href=url;
等待睡眠(1000);
window.location.href=“./”;
}
功能睡眠(ms){
返回新承诺(resolve=>setTimeout(resolve,ms));
}
单击锚定标记后,用户将导航到url参数,等待一秒钟后,用户将导航到第二个url(在本例中为主页)。为什么不将您的
更新:
代码包含到您的启动操作中?@davidele哦,我明白您的意思,如果我按照您的建议执行,代码将在服务器上运行。但是,如果安装了.exe,当前代码将在客户端计算机上运行。不确定我是否理解您的情况,但您可以在应用程序或主页上将客户端重定向到url。您可以使用javascript或jquery来实现这一点。例如,您可以在加载索引页时运行此操作<代码>window.location.href=“MyUpdaterLink.com”
@davidele没有javascript就没有办法做到这一点吗?我很难在看不到所有细节的情况下提供解决方案。据我所见,我建议使用javascript。我认为ASP.NET不会允许您从一个操作加载两个页面。