How to: Delete an Entity
Deleting metadata with the Administration object model is straightforward. Every metadata object has a Delete method that deletes the object and its children. For example, if you delete an entity, all the methods under it are also deleted. Deleting an LobSystem object deletes the entire application from the Business Data Catalog.
This code example shows how to delete an existing entity from the Business Data Catalog.
Example
This code example shows you how to delete the ProductModel entity from the Business Data Catalog.
Prerequisites
Ensure a Shared Service Provider is already created.
Create an LobSystem instance and set connection parameters as shown in How to: Create an LobSystem Using the Administration Object Model.
Create the ProductModel entity as shown in How to: Create an Entity Using the Administration Object Model.
Create a Finder method as shown in How to: Create a Method and Filters Using the Administration Object Model.
Replace the constant value EnterYourSSPNameHere in the code with the name of your Shared Resource Provider.
Project References
Add the following Project References in your console application code project before running this sample:
Microsoft.SharePoint
Microsoft.SharePoint.Portal
Microsoft.Office.Server
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.Office.Server.ApplicationRegistry.Administration;
using Microsoft.Office.Server.ApplicationRegistry.Infrastructure;
using WSSAdmin = Microsoft.SharePoint.Administration;
using OSSAdmin = Microsoft.Office.Server.Administration;
namespace Microsoft.SDK.SharePointServer.Samples
{
class GetStartedAndCreateSystem
{
const string yourSSPName = "SharedServices1";
static void Main(string[] args)
{
SetupBDC();
DeleteEntity();
Console.WriteLine("Press any key to exit...");
Console.Read();
}
static void SetupBDC()
{
SqlSessionProvider.Instance().SetSharedResourceProviderToUse(yourSSPName);
}
public static void DeleteEntity()
{
LobSystemInstance mySysInstance = null;
LobSystemInstanceCollection sysInsCollection = ApplicationRegistry.Instance.GetLobSystemInstancesLikeName("AdventureWorksSampleFromCode");
foreach (LobSystemInstance sysInstance in sysInsCollection)
{
if (sysInstance.Name == "AdventureWorksSampleFromCode")
{
mySysInstance = sysInstance;
break;
}
}
IList<Entity> entityCollection = new List<Entity>(mySysInstance.LobSystem.Entities);
Entity e = Entity.GetById(entityCollection[0].Id);
e.Delete();
Console.WriteLine("Done");
}
}
}