Я думаю, что вы никогда не должны использовать sqldatasource на своей странице.
Попробуйте вот так
- Сначала мы создадим класс Lib. В этом Class Lib мы создадим другой файл класса, который улучшит возможность повторного использования.
1.1 Добавление класса Lib (Перейти в файл -> Новый проект -> Добавить ClassLibrary)
- Теперь мы создадим класс соединения БД
2.1 Добавьте файл класса в проект класса lib как 'Classbll'
public class DBConnection
{
#region"private variables"
private string _sConnectionString = ConfigurationManager.AppSettings["DBConnectString"].ToString();
private static string _sErrorMessage = string.Empty;
#endregion
#region "Public Properties"
public string DataConnectionString
{
get
{
return _sConnectionString;
}
}
public string ErrorMessage
{
get
{
return _sErrorMessage;
}
set
{
_sErrorMessage = value;
}
}
#endregion
}
2.2 Определение строки подключения в файле web.config в основном проекте
<appSettings>
<add key="DBConnectString" value="SERVER=XYZSERVER;UID=XXYY;Password=ZZZXXX;Database=DBXXYYZZ;"/>
</appSettings>
3 Теперь создайте другой файл класса в том же проекте lib класса.
Допустим, файл с именем «FillCommon.cs»
using System.Data.SqlClient;
using Microsoft.ApplicationBlocks.Data;
using System.Data;
using System.Web.UI.WebControls;
namespace Clssbll
{
public class FillCommon : DBConnection
{
#region "Private variables"
private string _smRoleMasterRoleID;
#endregion
#region "Public variables"
public string mRoleMasterRoleID
{
get { return _smRoleMasterRoleID; }
set { _smRoleMasterRoleID = value; }
}
#endregion
#region "Public Methods"
public DataSet GetmRoleMaster_infoSingle()
{
try
{
DataSet oDS = new DataSet();
SqlParameter[] oParam = new SqlParameter[1];
oParam[0] = new SqlParameter("@m_RoleID", _smRoleMasterRoleID);
oDS = SqlHelper.ExecuteDataset( DataConnectionString, CommandType.StoredProcedure, "SelectmRoleMaster", oParam);
return oDS;
}
catch (Exception e)
{
ErrorMessage = e.Message;
return null;
}
}
Теперь добавьте Classbll (Class Lib) в основную ссылку проекта или в корзину.
В основном файле класса проекта
Вы можете использовать это где угодно, используя пространство имен «Использование Classbll»
Если вы сочтете это полезным, отметьте это как свой ответ, иначе дайте мне знать ...