Invoke Powershell using Visual Studio (C#) to search AD User RRS feed

  • Question

  • Hi,

    I managed to get the test ASPX page I was creating working which can show services and their state.

    The only issue I'm facing now is that when I type in a username to search and click search the page is supposed to execute the powershell script to Import the AD module and search based on what is input as the username.

    Below is my Default.aspx.cs page code:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Management.Automation;
    using System.Text;
    namespace PowerShellExecution
    public partial class Default : System.Web.UI.Page
        protected void Page_Load(object sender, EventArgs e)
        protected void ExecuteCode_Click(object sender, EventArgs e)
            // Clean the Result TextBox            
            ResultBox.Text = string.Empty;
            // Initialize PowerShell engine            
            var shell = PowerShell.Create();
            // Add the script to the PowerShell object            
            // Execute the script            
            var results = shell.Invoke();
            // display results, with BaseObject converted to string            
            // Note : use |out-string for console-like output            
            if (results.Count > 0)
                // We use a string builder ton create our result text                
                var builder = new StringBuilder();
                foreach (var psObject in results)
                    // Convert the Base Object to a string and append it to the string builder.                    
                    // Add \r\n for line breaks                    
                    builder.Append(psObject.BaseObject.ToString() + "\r\n");
                // Encode the string in HTML (prevent security issue with 'dangerous' caracters like < >                
                ResultBox.Text = Server.HtmlEncode(builder.ToString());


    Here is my Powershell Script:

    $UserPrompt = Read-Host "Enter Username"
    Get-ADUser $UserPrompt * | Select Name,SamAccountName

    Am I completely missing something?


    Saturday, June 16, 2018 6:19 AM

All replies