Application.DeleteApplication Method
Deletes the enterprise application definition and all associated credentials.
Namespace: Microsoft.SharePoint.Portal.SingleSignon
Assembly: Microsoft.SharePoint.Portal.SingleSignon (in Microsoft.SharePoint.Portal.SingleSignon.dll)
Syntax
'Declaration
<SingleSignonPermissionAttribute(SecurityAction.Demand, Access := SingleSignonAccess.Minimal)> _
Public Shared Sub DeleteApplication ( _
strApplicationName As String _
)
'Usage
Dim strApplicationName As String
Application.DeleteApplication(strApplicationName)
[SingleSignonPermissionAttribute(SecurityAction.Demand, Access = SingleSignonAccess.Minimal)]
public static void DeleteApplication(
string strApplicationName
)
Parameters
- strApplicationName
Type: System.String
The name of the enterprise application definition. This is not the enterprise application definition friendly name. If strApplicationName does not exist in the single sign-on database, a SingleSignonException error is thrown. The maximum number of allowed characters is 128.
Remarks
Only users who are members of the single sign-on administrator account or members of the enterprise application definition manager account can delete application definitions.
The result of each call to the DeleteApplication method is audited and stored in the single sign-on database. The ServiceAction enumeration recorded is DeleteApplication.
Deleting an enterprise application definition also deletes all associated credentials for the application definition.
Examples
The following code example shows how to use the DeleteApplication method.
using System;
using Microsoft.SharePoint.Portal.SingleSignon;
namespace SSOSampleCode
{
/// <summary>
/// Sample code for SharePoint Portal Single SignOn.
/// </summary>
class CMainEntry
{
[STAThread]
static void Main(string[] args)
{
try
{
//Create the application fields (max 5 fields).
Application.ApplicationField[] rgFields = new Application.ApplicationField[5];
rgFields[0] = new Application.ApplicationField(
"Field1 Label", //Application field name
true); //true == mask in the UI, false == don't mask in the UI
rgFields[1] = new Application.ApplicationField(
"Field2 Label",
false);
rgFields[2] = new Application.ApplicationField(
"Field3 Label",
true);
rgFields[3] = new Application.ApplicationField(
"Field4 Label",
false);
rgFields[4] = new Application.ApplicationField(
"Field5 Label",
true);
//Create group application information data.
Application.ApplicationInfo App = new Application.ApplicationInfo(
"MyIndividualApplicationID",
"My Individual Applicaiton Display Name",
Application.ApplicationType.Individual,
"someone@someplace.someext");
//Now, add the application.
Application.AddApplication(
App,
rgFields,
Application.ApplicationCreationDisposition.CreateNew);
Console.WriteLine("Successfully added the individual application!");
//Get the application.
Application.ApplicationInfo MyApp = null;
Application.GetApplication(
"MyIndividualApplicationID",
ref MyApp);
Console.WriteLine("Application Information:");
Console.WriteLine("Application ID: " + MyApp.ApplicationName);
Console.WriteLine("Application friendly name: " + MyApp.ApplicationFriendlyName);
Console.WriteLine("Application contact: " + MyApp.ContactName);
Console.WriteLine("Application type: " + MyApp.Type);
//Now, delete the application.
Application.DeleteApplication("MyIndividualApplicationID");
Console.WriteLine("Successfully deleted the individual application!");
}
catch (SingleSignonException esso)
{
Console.WriteLine("SingleSignonException caught.");
Console.WriteLine("Exception Code: " + "0x" + esso.LastErrorCode.ToString("x"));
Console.WriteLine("Source: " + esso.Source);
Console.WriteLine("StackTrace: " + esso.StackTrace);
Console.WriteLine("MethodName: " + esso.TargetSite.Name);
Console.WriteLine("Message: " + esso.Message);
}
catch (Exception e)
{
Console.WriteLine("Exception caught.");
Console.WriteLine("Source: " + e.Source);
Console.WriteLine("StackTrace: " + e.StackTrace);
Console.WriteLine("MethodName: " + e.TargetSite.Name);
Console.WriteLine("Message: " + e.Message);
}
}
}
}