SqlDataProvider.cs

using Microsoft.VisualBasic;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Diagnostics;
using System.Data.SqlClient;
using Microsoft.ApplicationBlocks.Data;
using DotNetNuke.Common.Utilities;

namespace CEL.Modules.CELLibrary
{

/// -----------------------------------------------------------------------------
/// <summary>
/// SQL Server implementation of the abstract DataProvider class
/// </summary>
/// <remarks>
/// </remarks>
/// <history>
/// </history>
/// -----------------------------------------------------------------------------
public class SqlDataProvider : DataProvider
{


#region "Private Members"

private const string ProviderType = "data";

private const string ModuleQualifier = "CEL_";
private Framework.Providers.ProviderConfiguration _providerConfiguration = Framework.Providers.ProviderConfiguration.GetProviderConfiguration(ProviderType);
private string _connectionString;
private string _providerPath;
private string _objectQualifier;

private string _databaseOwner;
#endregion

#region "Constructors"


public SqlDataProvider()
{
// Read the configuration specific information for this provider
Framework.Providers.Provider objProvider = (Framework.Providers.Provider)_providerConfiguration.Providers(_providerConfiguration.DefaultProvider);

// Read the attributes for this provider
//Get Connection string from web.config
_connectionString = Config.GetConnectionString();

if (string.IsNullOrEmpty(_connectionString)) {
// Use connection string specified in provider
_connectionString = objProvider.Attributes("connectionString");
}

_providerPath = objProvider.Attributes("providerPath");

_objectQualifier = objProvider.Attributes("objectQualifier");
if (!string.IsNullOrEmpty(_objectQualifier) & _objectQualifier.EndsWith("_") == false) {
_objectQualifier += "_";
}

_databaseOwner = objProvider.Attributes("databaseOwner");
if (!string.IsNullOrEmpty(_databaseOwner) & _databaseOwner.EndsWith(".") == false) {
_databaseOwner += ".";
}

}

#endregion

#region "Properties"

public string ConnectionString {
get { return _connectionString; }
}

public string ProviderPath {
get { return _providerPath; }
}

public string ObjectQualifier {
get { return _objectQualifier; }
}

public string DatabaseOwner {
get { return _databaseOwner; }
}

#endregion

#region "Private Methods"

private string GetFullyQualifiedName(string name)
{
return DatabaseOwner + ObjectQualifier + ModuleQualifier + name;
}

private object GetNull(object Field)
{
return DotNetNuke.Common.Utilities.Null.GetNull(Field, DBNull.Value);
}

#endregion

#region "Public Methods"

public override DataSet GetLibraryByMedia(string Media, string SortExp, int ModuleID)
{
return (DataSet)SqlHelper.ExecuteDataset(ConnectionString, GetFullyQualifiedName("GetLibraryByMedia"), Media, SortExp, ModuleID);
}

public override DataSet GetAllBorrowedBook(int ModuleID)
{
return (DataSet)SqlHelper.ExecuteDataset(ConnectionString, GetFullyQualifiedName("GetAllBorrowedBook"), ModuleID);
}
public override DataSet GetAllLibrary(string SortExp, int ModuleID)
{
return (DataSet)SqlHelper.ExecuteDataset(ConnectionString, GetFullyQualifiedName("GetAllLibrary"), SortExp, ModuleID);
}
public override DataSet GetArchivedLibrary(int ModuleID)
{
return (DataSet)SqlHelper.ExecuteDataset(ConnectionString, GetFullyQualifiedName("GetArchivedLibrary"), ModuleID);
}
public override DataSet GetLibraryByID(int LibraryID)
{
return (DataSet)SqlHelper.ExecuteDataset(ConnectionString, GetFullyQualifiedName("GetLibraryByID"), LibraryID);
}
public override DataSet GetLibraryByAuthor(string Author, string SortExp, int ModuleID)
{
return (DataSet)SqlHelper.ExecuteDataset(ConnectionString, GetFullyQualifiedName("GetLibraryByAuthor"), Author, SortExp, ModuleID);
}
public override DataSet GetLibraryByTitle(string Title, string SortExp, int ModuleID)
{
return (DataSet)SqlHelper.ExecuteDataset(ConnectionString, GetFullyQualifiedName("GetLibraryByTitle"), Title, SortExp, ModuleID);
}
public override DataSet GetLibraryByPublisher(string Publisher, string SortExp, int ModuleID)
{
return (DataSet)SqlHelper.ExecuteDataset(ConnectionString, GetFullyQualifiedName("GetLibraryByPublisher"), Publisher, SortExp, ModuleID);
}
public override DataSet GetLibraryByPublishDate(string PublishDate, string SortExp, int ModuleID)
{
return (DataSet)SqlHelper.ExecuteDataset(ConnectionString, GetFullyQualifiedName("GetLibraryByPublishDate"), PublishDate, SortExp, ModuleID);
}
public override DataSet GetNotArchivedLibrary(int ModuleID)
{
return (DataSet)SqlHelper.ExecuteDataset(ConnectionString, GetFullyQualifiedName("GetNotArchivedLibrary"), ModuleID);
}
public override void AddLibrary(string Title, string ISBN, string Author, string Publisher, string PublishDate, string Owner, int ModuleID, string Media)
{
SqlHelper.ExecuteNonQuery(ConnectionString, GetFullyQualifiedName("AddLibrary"), Title, ISBN, Author, Publisher, PublishDate, Owner, ModuleID, Media);
}
public override void UpdateLibrary(string Title, string ISBN, string Author, string Publisher, string PublishDate, string Owner, int LibraryID, string Media)
{
SqlHelper.ExecuteNonQuery(ConnectionString, GetFullyQualifiedName("UpdateLibrary"), Title, ISBN, Author, Publisher, PublishDate, Owner, LibraryID, Media);
}

public override void DeleteLibraryByID(int LibraryID)
{
SqlHelper.ExecuteNonQuery(ConnectionString, GetFullyQualifiedName("DeleteLibraryByID"), LibraryID);
}

public override void ArchiveBook(int LibraryID)
{
SqlHelper.ExecuteNonQuery(ConnectionString, GetFullyQualifiedName("ArchiveBook"), LibraryID);
}
public override void UnArchiveBook(int LibraryID)
{
SqlHelper.ExecuteNonQuery(ConnectionString, GetFullyQualifiedName("UnArchiveBook"), LibraryID);
}
public override DataSet GetBorrowedBookByLibraryID(int LibraryID)
{
return (DataSet)SqlHelper.ExecuteDataset(ConnectionString, GetFullyQualifiedName("GetBorrowedBookByLibraryID"), LibraryID);
}

public override void AddLibraryBorrow(int LibraryID, int UserID, DateTime BorrowDate, DateTime DueReturnDate, DateTime ActualReturnDate)
{
SqlHelper.ExecuteNonQuery(ConnectionString, GetFullyQualifiedName("AddLibraryBorrow"), LibraryID, UserID, BorrowDate, DueReturnDate, ActualReturnDate);
}

public override void RemoveBorrow(int LibraryBorrowID, int LibraryID)
{
SqlHelper.ExecuteNonQuery(ConnectionString, GetFullyQualifiedName("RemoveBorrow"), LibraryBorrowID, LibraryID);
}
public override void UpdateLibraryModuleID(int ModuleID, int LibraryID)
{
SqlHelper.ExecuteNonQuery(ConnectionString, GetFullyQualifiedName("UpdateLibraryModuleID"), ModuleID, LibraryID);
}
public override DataSet GetAllLibraryWithoutModuleID()
{
return SqlHelper.ExecuteDataset(ConnectionString, GetFullyQualifiedName("GetAllLibraryWithoutModuleID"));
}
#endregion

}
}
posted @ 2010-07-13 00:14  小生不才  阅读(493)  评论(0编辑  收藏  举报