一个ObjectDataSource 控件,该控件从名为 AuthorsDB 的数据访问层组件公开数据(代码示例)
来源:互联网 发布:单片机控制电磁铁 编辑:程序博客网 时间:2024/06/07 03:56
//-----------------------------------------------------------------------// This file is part of the Microsoft .NET SDK Code Samples.// // Copyright (C) Microsoft Corporation. All rights reserved.// //This source code is intended only as a supplement to Microsoft//Development Tools and/or on-line documentation. See these other//materials for detailed information regarding Microsoft code samples.// //THIS CODE AND INFORMATION ARE PROVIDED AS IS WITHOUT WARRANTY OF ANY//KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE//IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A//PARTICULAR PURPOSE.//-----------------------------------------------------------------------using System;using System.Configuration;public class AuthorsDB{ public AuthorsDB() { } public static System.Data.DataSet GetAuthorsByState(string state) { string connectionString = ConfigurationManager.ConnectionStrings["Pubs"].ConnectionString; System.Data.IDbConnection dbConnection = new System.Data.SqlClient.SqlConnection(connectionString); string queryString = "SELECT au_id, au_fname, au_lname, state FROM [authors] WHERE ([authors].[state] = @state)"; System.Data.IDbCommand dbCommand = new System.Data.SqlClient.SqlCommand(); dbCommand.CommandText = queryString; dbCommand.Connection = dbConnection; System.Data.IDataParameter dbParam_state = new System.Data.SqlClient.SqlParameter(); dbParam_state.ParameterName = "@state"; dbParam_state.Value = state; dbParam_state.DbType = System.Data.DbType.StringFixedLength; dbCommand.Parameters.Add(dbParam_state); System.Data.IDbDataAdapter dataAdapter = new System.Data.SqlClient.SqlDataAdapter(); dataAdapter.SelectCommand = dbCommand; System.Data.DataSet dataSet = new System.Data.DataSet(); dataAdapter.Fill(dataSet); return dataSet; } public static System.Data.DataSet GetStates() { string connectionString = ConfigurationManager.ConnectionStrings["Pubs"].ConnectionString; System.Data.IDbConnection dbConnection = new System.Data.SqlClient.SqlConnection(connectionString); string queryString = "SELECT DISTINCT [authors].state FROM [authors]"; System.Data.IDbCommand dbCommand = new System.Data.SqlClient.SqlCommand(); dbCommand.CommandText = queryString; dbCommand.Connection = dbConnection; System.Data.IDbDataAdapter dataAdapter = new System.Data.SqlClient.SqlDataAdapter(); dataAdapter.SelectCommand = dbCommand; System.Data.DataSet dataSet = new System.Data.DataSet(); dataAdapter.Fill(dataSet); return dataSet; } public static int UpdateAuthor (string au_id, string au_lname, string au_fname, string state) { string connectionString = ConfigurationManager.ConnectionStrings["Pubs"].ConnectionString; System.Data.IDbConnection dbConnection = new System.Data.SqlClient.SqlConnection(connectionString); string queryString = "UPDATE [authors] SET [au_lname]=@au_lname, [au_fname]=@au_fname, [state]=@state WHERE ([authors].[au_id] = @au_id)"; System.Data.IDbCommand dbCommand = new System.Data.SqlClient.SqlCommand(); dbCommand.CommandText = queryString; dbCommand.Connection = dbConnection; System.Data.IDataParameter dbParam_au_id = new System.Data.SqlClient.SqlParameter(); dbParam_au_id.ParameterName = "@au_id"; dbParam_au_id.Value = au_id; dbParam_au_id.DbType = System.Data.DbType.String; dbCommand.Parameters.Add(dbParam_au_id); System.Data.IDataParameter dbParam_au_lname = new System.Data.SqlClient.SqlParameter(); dbParam_au_lname.ParameterName = "@au_lname"; dbParam_au_lname.Value = au_lname; dbParam_au_lname.DbType = System.Data.DbType.String; dbCommand.Parameters.Add(dbParam_au_lname); System.Data.IDataParameter dbParam_au_fname = new System.Data.SqlClient.SqlParameter(); dbParam_au_fname.ParameterName = "@au_fname"; dbParam_au_fname.Value = au_fname; dbParam_au_fname.DbType = System.Data.DbType.String; dbCommand.Parameters.Add(dbParam_au_fname); System.Data.IDataParameter dbParam_state = new System.Data.SqlClient.SqlParameter(); dbParam_state.ParameterName = "@state"; dbParam_state.Value = state; dbParam_state.DbType = System.Data.DbType.StringFixedLength; dbCommand.Parameters.Add(dbParam_state); int rowsAffected = 0; dbConnection.Open(); try { rowsAffected = dbCommand.ExecuteNonQuery(); } finally { dbConnection.Close(); } return rowsAffected; }}