Notification Services—Enumerating a Notification Services Application Database

Microsoft .NET Framework, ASP.NET, Visual C# (CSharp, C Sharp, C-Sharp) Developer Training, Visual Studio


Jump to: navigation, search
CSharp-Online.NET:Articles
Database Articles

Notification Services

© 2006 O'Reilly Media, Inc.

Enumerating a Notification Services Application Database

This example enumerates the filegroup, database files, and logfiles for the HelloWorldApp Notification Services application created in Example 18-1:

using System;
using Microsoft.SqlServer.Management.Smo;
using Microsoft.SqlServer.Management.Nmo;
 
class Program
{
  static void Main(string[] args)
  {
    Server server = new Server("(local)");
    NotificationServices ns = 
      server.NotificationServices;
    Instance ins = ns.Instances["StockWatch"];
    Application a = 
      ins.Applications["StockWatchApp"];
    ApplicationDatabaseOptions ado = 
      a.ApplicationDatabaseOptions;
    Console.WriteLine
      ("APPLICATION DATABASE OPTIONS:");
    Console.WriteLine(" Name: " + ado.Name);
    Console.WriteLine(" DefaultFileGroup: " 
      + ado.DefaultFileGroup);
    Console.WriteLine(Environment.NewLine 
      + "FILE GROUPS:");
    foreach (ApplicationDatabaseFileGroup adfg in
    ado.ApplicationDatabaseFileGroups)
    {
      Console.WriteLine(" Name: " + adfg.Name);
      Console.WriteLine(Environment.NewLine + "DATABASE FILES");
      foreach (ApplicationDatabaseFile adf in adfg.ApplicationDatabaseFiles)
      Console.WriteLine(" Name: " + adf.Name);
    }
    Console.WriteLine(Environment.NewLine + "LOG FILES:");
    foreach (ApplicationDatabaseLogFile adlf in
      ado.ApplicationDatabaseLogFiles)
        Console.WriteLine(" Name: " + adlf.Name);
    Console.WriteLine(Environment.NewLine + "Press any key to continue.");
    Console.ReadKey( );
  }
}

Results are shown in Figure 18-10.


Image:ProgSQLServer2005fig18-10.jpg
Figure 18-10. Results for enumerating a Notification Services application database example


Each Notification Services application has one database that can optionally contain one or more filegroups. If you define filegroups, one must be called PRIMARY. Use SQL Server Management Studio if you need to alter the application database after creating the instance.

The NMO classes for managing the application database, filegroups, files, and logfiles are described in Table 18-14.

Table 18-14. NMO classes for managing application databases

Class Database
ApplicationDatabaseFile Represents an application database file.
ApplicationDatabaseFileCollection Represents a collection of application databases as

ApplicationDatabaseFile objects. The ApplicationDatabaseFiles property of the ApplicationDatabaseFileGroup class returns the application databases in the application database filegroup.

ApplicationDatabaseFileGroup Represents an application database filegroup.
ApplicationDatabaseFileGroupCollection Represents a collection of application database filegroups as

ApplicationDatabaseFileGroup objects. The ApplicationDatabaseFileGroups property of the ApplicationDatabaseOptions class returns the application database filegroups in the application.

ApplicationDatabaseLogFile Represents an application database logfile.
ApplicationDatabaseLogFileCollection Represents a collection of application database logfiles as

ApplicationDatabaseLogFile objects. The ApplicationDatabaseLogFiles property of the ApplicationDatabaseOptions class returns the application database logfiles in the application.

ApplicationDatabaseOptions Represents database options for the application database. The

ApplicationDatabaseOptions property of the Application class returns the database properties for the application.


Previous_Page_.gif Next_Page_.gif


Personal tools