You've already forked linux-packaging-mono
56 lines
1.5 KiB
C#
56 lines
1.5 KiB
C#
|
|
// Copyright (c) Microsoft Corporation. All rights reserved. See License.txt in the project root for license information.
|
|||
|
|
|
|||
|
|
using WebMatrix.Data;
|
|||
|
|
|
|||
|
|
namespace WebMatrix.WebData
|
|||
|
|
{
|
|||
|
|
internal class DatabaseConnectionInfo
|
|||
|
|
{
|
|||
|
|
private string _connectionStringName;
|
|||
|
|
private string _connectionString;
|
|||
|
|
|
|||
|
|
private enum ConnectionType
|
|||
|
|
{
|
|||
|
|
ConnectionStringName = 0,
|
|||
|
|
ConnectionString = 1
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public string ConnectionString
|
|||
|
|
{
|
|||
|
|
get { return _connectionString; }
|
|||
|
|
set
|
|||
|
|
{
|
|||
|
|
_connectionString = value;
|
|||
|
|
Type = ConnectionType.ConnectionString;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public string ConnectionStringName
|
|||
|
|
{
|
|||
|
|
get { return _connectionStringName; }
|
|||
|
|
set
|
|||
|
|
{
|
|||
|
|
_connectionStringName = value;
|
|||
|
|
Type = ConnectionType.ConnectionStringName;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public string ProviderName { get; set; }
|
|||
|
|
|
|||
|
|
private ConnectionType Type { get; set; }
|
|||
|
|
|
|||
|
|
public Database Connect()
|
|||
|
|
{
|
|||
|
|
switch (Type)
|
|||
|
|
{
|
|||
|
|
case ConnectionType.ConnectionString:
|
|||
|
|
return Database.OpenConnectionString(ConnectionString, ProviderName);
|
|||
|
|
case ConnectionType.ConnectionStringName:
|
|||
|
|
return Database.Open(ConnectionStringName);
|
|||
|
|
default:
|
|||
|
|
return null;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|