//
// System.Configuration.ConnectionStringSettings.cs
//
-// Author:
+// Authors:
// Sureshkumar T <tsureshkumar@novell.com>
+// Chris Toshok <toshok@ximian.com>
//
//
-//
-// Copyright (C) 2004 Novell, Inc (http://www.novell.com)
+// Copyright (C) 2004,2005 Novell, Inc (http://www.novell.com)
//
// Permission is hereby granted, free of charge, to any person obtaining
// a copy of this software and associated documentation files (the
#if NET_2_0
-#region Using directives
-
using System;
-
-#endregion
+using System.ComponentModel;
namespace System.Configuration
{
- public sealed class ConnectionStringSettings : ConfigurationElement
- {
-
- #region Fields
- private static ConfigurationPropertyCollection _properties;
-
- private static readonly ConfigurationProperty _propConnectionString;
- private static readonly ConfigurationProperty _propName;
- private static readonly ConfigurationProperty _propProviderName;
- #endregion // Fields
-
- #region Constructors
- static ConnectionStringSettings ()
- {
- _properties = new ConfigurationPropertyCollection ();
- _propName = new ConfigurationProperty ("name",
- typeof(string),
- "",
- ConfigurationPropertyOptions.Required |
- ConfigurationPropertyOptions.IsKey
- );
-
- _propProviderName = new ConfigurationProperty ("providerName",
- typeof (string),
- "",
- ConfigurationPropertyOptions.Required
- );
-
- _propConnectionString = new ConfigurationProperty ("connectionString",
- typeof (string),
- "",
- ConfigurationPropertyOptions.Required
- );
-
- _properties.Add (_propName);
- _properties.Add (_propProviderName);
- _properties.Add (_propConnectionString);
- }
-
- public ConnectionStringSettings ()
- : this (null, null, null)
- {
- }
-
- public ConnectionStringSettings (string name, string connectionString)
- : this (name, connectionString, null)
- {
- }
-
- public ConnectionStringSettings (string name, string connectionString, string providerName)
- {
- Name = name;
- ConnectionString = connectionString;
- ProviderName = providerName;
- }
- #endregion // Constructors
-
- #region Properties
-
- protected internal override ConfigurationPropertyCollection Properties
- {
- get
- {
- return _properties;
- }
- }
- public string Name
- {
- get { return (string) base [_propName];}
- set { base [_propName] = value; }
- }
-
- public string ProviderName
- {
- get { return (string) base [_propProviderName]; }
- set { base [_propProviderName] = value; }
- }
-
- public string ConnectionString
- {
- get { return (string) base [_propConnectionString]; }
- set { base [_propConnectionString] = value; }
- }
-
- #endregion // Properties
-
- public override string ToString ()
- {
- return ConnectionString;
- }
- }
+ public sealed class ConnectionStringSettings : ConfigurationElement
+ {
+ private static ConfigurationPropertyCollection _properties;
+
+ private static readonly ConfigurationProperty _propConnectionString;
+ private static readonly ConfigurationProperty _propName;
+ private static readonly ConfigurationProperty _propProviderName;
+
+ static ConnectionStringSettings ()
+ {
+ _properties = new ConfigurationPropertyCollection ();
+ _propName = new ConfigurationProperty ("name", typeof(string), null,
+ TypeDescriptor.GetConverter (typeof (string)),
+ null,
+ ConfigurationPropertyOptions.IsRequired | ConfigurationPropertyOptions.IsKey);
+
+ _propProviderName = new ConfigurationProperty ("providerName", typeof (string), "",
+ ConfigurationPropertyOptions.None);
+
+ _propConnectionString = new ConfigurationProperty ("connectionString", typeof (string), "",
+ ConfigurationPropertyOptions.IsRequired);
+
+ _properties.Add (_propName);
+ _properties.Add (_propProviderName);
+ _properties.Add (_propConnectionString);
+ }
+
+ public ConnectionStringSettings ()
+ {
+ }
+
+ public ConnectionStringSettings (string name, string connectionString)
+ : this (name, connectionString, "")
+ {
+ }
+
+ public ConnectionStringSettings (string name, string connectionString, string providerName)
+ {
+ Name = name;
+ ConnectionString = connectionString;
+ ProviderName = providerName;
+ }
+
+ protected internal override ConfigurationPropertyCollection Properties
+ {
+ get { return _properties; }
+ }
+
+ [ConfigurationProperty ("name", DefaultValue = "", Options = ConfigurationPropertyOptions.IsRequired | ConfigurationPropertyOptions.IsKey)]
+ public string Name
+ {
+ get { return (string) base [_propName];}
+ set { base [_propName] = value; }
+ }
+
+ [ConfigurationProperty ("providerName", DefaultValue = "System.Data.SqlClient")]
+ public string ProviderName
+ {
+ get { return (string) base [_propProviderName]; }
+ set { base [_propProviderName] = value; }
+ }
+
+ [ConfigurationProperty ("connectionString", DefaultValue = "", Options = ConfigurationPropertyOptions.IsRequired)]
+ public string ConnectionString
+ {
+ get { return (string) base [_propConnectionString]; }
+ set { base [_propConnectionString] = value; }
+ }
+
+ public override string ToString ()
+ {
+ return ConnectionString;
+ }
+ }
}
#endif // NET_2_0