Notification Services—Enumerating a Notification Services Application Database
Microsoft .NET Framework, ASP.NET, Visual C# (CSharp, C Sharp, C-Sharp) Developer Training, Visual Studio
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.

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
|
ApplicationDatabaseFileGroup
| Represents an application database filegroup. |
ApplicationDatabaseFileGroupCollection
| Represents a collection of application database filegroups as
|
ApplicationDatabaseLogFile
| Represents an application database logfile. |
ApplicationDatabaseLogFileCollection
| Represents a collection of application database logfiles as
|
ApplicationDatabaseOptions
| Represents database options for the application database. The
|
|

