2013-05-21 51 views
1

我在Visual Studio 2012中的單個解決方案中有兩個ASP.NET MVC 4項目。我將解決方案設置爲使用多個啓動項目,開始。當我點擊「開始」工具欄按鈕時,每個項目都會在不同的Internet Explorer瀏覽器窗口中啓動。在單個瀏覽器實例的標籤中啓動多個Visual Studio 2012 Web應用程序

但我希望兩個項目在單個瀏覽器實例的兩個選項卡中啓動。有沒有辦法做到這一點?

謝謝!

回答

0

我知道要做到這一點的唯一方法是:

在你的項目中添加一個簡單的視圖,基本上是空的HTML。將該項目設置爲啓動簡單視圖作爲其啓動頁面,並將其他項目設置爲「不要打開頁面,等待請求」。

在該空視圖的頭部部分,添加下面的JavaScript腳本部分:

<script> 
    // to open another project in a newtab (works in IE) 
    window.open('http://localhost:<otherprojectport>/otherprojectpage', 'tab1'); 
    // As many of these as you like as well, to open other actions/pages from this project: 
    window.open('@Url.Action("Edit", "User", new { id=1 })', 'tab2'); // note different name 
    // and to open a third page in the original tab that opens: 
    document.location.href = '@Url.Action("Index", "User")'; 
</script> 

這是我發現做到這一點,迄今唯一的辦法了,反正我覺得它更容易編輯一個視圖比多個項目屬性頁面更改打開的選項卡。

您可能必須告訴瀏覽器,您的網站可以打開彈出窗口。爲此,只需在第一次運行時排除document.location行,它會告訴您它阻止了一個彈出窗口,因此您可以「始終允許它們」訪問您的網站。

腳註

然後,如果您想使用Chrome啓動以及我發現的唯一的解決辦法是做以上,但使用的擴展名(如「一個窗口」,這我不認可,也沒有聲稱是安全的,如果你使用它的話,如果你的電腦離開家,不要責怪我)來阻止加載頁面作爲單獨的彈出窗口。

相關問題