[英]How to get app port from IIS Express in C#
我正在嘗試從 IIS Express 獲取正在運行應用程序的端口。
到目前為止,我嘗試了這兩種方法:
//first
var iisExpress = new DirectoryEntry("IIS://localhost/W3SVC/AppPools").Children;
//second
var mgr = new ServerManager().Sites;
但是兩者都只給我DefaultAppPool
和Default Web App
,而我需要的是我從 Visual Studio 在本地運行的應用程序。
這將輸出在 IIS 上運行的所有網站的名稱和端口。
var serverManager = new ServerManager();
foreach (Site site in serverManager.Sites)
{
Console.WriteLine(site.Name);
Console.WriteLine(site.Bindings[0].EndPoint.Port);
}
如果您想將特定站點(例如:MyWebsite)的端口保存在變量上,您可以執行以下操作:
var serverManager = new ServerManager();
var mySite = serverManager.Sites.FirstOrDefault(s => s.Name.Contains("MyWebsite"));
int myPort = mySite?.Bindings[0].EndPoint.Port ?? 0;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.