Are you looking for an example code to execute CSharp code from PowerShell?
Hope you can get started with the below sample. As per your requirement change the DLL path, Site URL, UserName and Password parameters in the below example.
\ $SourceCode = @"
using System;
using System.Management.Automation;
using System.Security;
using Microsoft.SharePoint.Client;
using Microsoft.SharePoint.Client.Utilities;
namespace SPOperations {
public class SPHelper {
public static string getWebTitle(string siteUrl, string userName, string sitePassword) {
using(ClientContext clientContext = new ClientContext(siteUrl)) {
SecureString passWord = new SecureString();
foreach(char c in sitePassword.ToCharArray()) passWord.AppendChar(c);
clientContext.Credentials = new SharePointOnlineCredentials(userName, passWord);
Web web = clientContext.Web;
clientContext.Load(web);
clientContext.ExecuteQuery();
return web.Title;
}
}
}
}
"@
try
{
$scriptBase = split-path $ SCRIPT : MyInvocation . MyCommand . Path -parent
Set-Location $scriptBase
$TenantConfig = $scriptBase + "\\" + "Configs\\settings.xml"
$TenantConfigXML = [ xml ]( < Get-Content ( $TenantConfig ) > );
$url = $TenantConfigXML . ConnectionString . Key . URL
$username = $TenantConfigXML . ConnectionString . Key . UserName
$password = $TenantConfigXML . ConnectionString . Key . Password
$assemblies = @( " $scriptBase \\DLL\\Microsoft.SharePoint.Client.dll" , " $scriptBase \\DLL\\Microsoft.SharePoint.Client.Runtime.dll" "System.Core" )
}
catch { Write-host "Error while loading the input parameters " \ $ \_.Exception.Message -ForegroundColor Red exit 1 }
try
{
#Add the Assembly
Add-Type -ReferencedAssemblies $assemblies -TypeDefinition $SourceCode -Language CSharp
}
catch { Write-host "Error while loading the Referenced Assemblies and Type Definition " \ $ \_.Exception.Message -ForegroundColor Red exit 1 }
try
{
$siteTitle = \ [ SPOperations.SPHelper\ ]:: getWebTitle ( $url , $username , $password )
Write -Host $siteTitle
}
catch { Write-host "Error : " $ \_.Exception.Message -ForegroundColor Red exit 1 }