嗯,只是为了保持简单:我有一个网络表单。在它上面一个名为“重启”的按钮。我点击这个按钮,IIS将重新启动。
现在,我需要在此Web按钮的OnClick事件后面编写什么C#代码? (如果有可能吗?)
<小时/> 然后添加第二个按钮。它被称为“重置”,应该只为当前的Web应用程序重置AppDomain。这个代码是什么?
答案 0 :(得分:11)
protected void Reload_Click(object sender, EventArgs e)
{
HttpRuntime.UnloadAppDomain();
}
protected void Restart_Click(object sender, EventArgs e)
{
using (var sc = new System.ServiceProcess.ServiceController("IISAdmin"))
{
sc.Stop();
sc.Start();
}
}
答案 1 :(得分:3)
Process iisreset = new Process();
iisreset.StartInfo.FileName = "iisreset.exe";
iisreset.StartInfo.Arguments = "computer name";
iisreset.Start();
//iisreset.exe is located in the windows\system32 folder.
答案 2 :(得分:1)
string processName = "aspnet_wp";
System.OperatingSystem os = System.Environment.OSVersion;
//Longhorn and Windows Server 2003 use w3wp.exe
if((os.Version.Major == 5 && os.Version.Minor > 1) || os.Version.Major ==6)
processName = "w3wp";
foreach(Process process in Process.GetProcessesByName(processName))
{
Response.Write("Killing ASP.NET worker process (Process ID:" +
process.Id + ")");
process.Kill();
}
答案 3 :(得分:1)
在运行此代码的服务器上是否托管了多个网站?如果是这样,您可能需要查看System.DirectoryServices名称空间,然后重新启动单个网站