Microsoft.Web.Administration.ServerManager
kullanarak IIS 7'nin temel URL'sini almak mümkün mü? Web Uygulamamın Temel URL'sini Alın
http://localhost
ama programlı almak gerekir.
ServerManager
kullanamazsam, en iyi alternatif nedir?
Microsoft.Web.Administration.ServerManager
kullanarak IIS 7'nin temel URL'sini almak mümkün mü? Web Uygulamamın Temel URL'sini Alın
http://localhost
ama programlı almak gerekir.
ServerManager
kullanamazsam, en iyi alternatif nedir?
string baseURL = HttpContext.Current.Request.Url.Host
'u kullanabilirsiniz.
Microsoft.Web.Administration.ServerManager'ın kullanımıyla ilgilenenler için, işte bir kod. Bir IIS uygulamasının birden fazla bağlayıcıya sahip olduğunu ve web uygulaması başına birden fazla URL ile sonuçlandığını düşünün.
var siteName = "Default Web Site";
var appPath = "MyWebApplication";
var serverManager = new ServerManager();
var site = serverManager.Sites[siteName];
appPath = appPath.StartsWith("/") ? appPath : "/" + appPath;
var app = site.Applications[appPath];
var urls = new List<string>();
foreach (var binding in site.Bindings)
{
var sb = new StringBuilder();
sb.Append(binding.Protocol);
sb.Append("://");
if (!string.IsNullOrWhiteSpace(binding.Host))
{
sb.Append(binding.Host);
}
else
{
if (Equals(binding.EndPoint.Address, IPAddress.Any))
{
sb.Append("localhost");
}
else
{
sb.Append(binding.EndPoint.Address);
}
if (binding.EndPoint.Port != 80)
{
sb.Append(":");
sb.Append(binding.EndPoint.Port);
}
}
sb.Append(app.Path);
urls.Add(sb.ToString());
}
Bunun OP'nin ilgilendiği şeyin aslında olmadığı ortaya çıkıyor. OP'nin kabul edilen cevap olarak "HttpContext.Current" cevabını işaretlediğini fark ettiniz mi? –
İşte bu yüzden cevabı "ilgilenenler için" ile tanıttım. Görüyorsunuz, burada birçok kişi buraya gelip ServerManager'la ilgili bir cevap arıyor, bu yüzden bunun faydalı olabileceğini düşünüyorum. –
Bu şekilde çalışmıyor. ServerManager'la ilgili bir cevap, ServerManager hakkında _question_'a bir cevap olmalıdır. –
@ Joe.Net: U karşılama Joe r: Ben Evet, size bir J –
oldu umuyoruz. Cevabımı bilmek beni mutlu etti. –
@ Joe.Net ederiz bu yararlı –