0
我已经搜索的连接字符串属性尚未初始化错误连接字符串属性未初始化
。
谷歌以及堆栈溢出,但无法找到解决方案。我创建了一个与数据库交互的数据库类,所有相关的代码都写在这个文件中。问题是相同的代码在其他页面上运行良好,它只是不能在名为“addevent.aspx”的页面上工作。我不明白为什么它不能正常运行。
下面是我在database.cs创建的方法文件
public void CreateConnection()
{
var ConfiguredString = ConfigurationManager.ConnectionStrings[ConnectionString].ConnectionString;
obj_sqlconnection = new SqlConnection(ConfiguredString);
}
//This property will set the connection string for database
public string ConnectionString
{
get
{ //if _connectionString is already created or set, only then it will return the value of _connectionString
if (_connectionString != string.Empty && _connectionString != "" && _connectionString != null)
return _connectionString;
else
return string.Empty;
}
// When you want to set the connection string set block is called.
set
{ // this line sets the connection string to the _connectionString data member for the first time.
if (_connectionString == string.Empty || _connectionString == "" || _connectionString == null)
_connectionString = value;
}
}
// Open database connection.
public void OpenConnection()
{
obj_sqlconnection.Open();
}
// Close database connection.
public void CloseConnection()
{
obj_sqlconnection.Close();
obj_sqlconnection.Dispose();
}
public SqlConnection GetCurrentConnection
{
get { return obj_sqlconnection; }
set { obj_sqlconnection = value; }
}
我根本就不懂这个错误,其发生的逻辑。我得到这个错误,当我打开连接
如何调用这些方法,我已经创建database.cs类的对象与对象名称MYDB方法的addEvent
public int AddEvent(string _title, string _description, string _place, int _eventTypeID, string _startingTime, string _endingTime, string _startingDate, string _endingDate, string _creatorID, string _picture)
{
string[] blacklist = { _title, _description, _place, _picture };
if (Jvalidate.FilterBlackLIstKeywords(blacklist))
{
int eventid = Convert.ToInt32(mydb.GetLastValueByColumnName("event_id", "tbl_events"));
int rowsaffected = 0;
mydb.CreateConnection();
mydb.InitializeSQLCommandObject(mydb.GetCurrentConnection, "spAddEvent", true);
mydb.obj_sqlcommand.Parameters.AddWithValue("@eventID", eventid + 1);
mydb.obj_sqlcommand.Parameters.AddWithValue("@title", _title);
mydb.obj_sqlcommand.Parameters.AddWithValue("@description", _description);
mydb.obj_sqlcommand.Parameters.AddWithValue("@place", _place);
mydb.obj_sqlcommand.Parameters.AddWithValue("@eventType", _eventTypeID);
mydb.obj_sqlcommand.Parameters.AddWithValue("@startingTime", _startingTime);
mydb.obj_sqlcommand.Parameters.AddWithValue("@endingTime", _endingTime);
mydb.obj_sqlcommand.Parameters.AddWithValue("@startDate", _startingDate);
mydb.obj_sqlcommand.Parameters.AddWithValue("@endDate", _endingDate);
mydb.obj_sqlcommand.Parameters.AddWithValue("@schoolID", SchoolID);
mydb.obj_sqlcommand.Parameters.AddWithValue("@eventCreatorID", _creatorID);
mydb.obj_sqlcommand.Parameters.AddWithValue("@eventPicture", _picture);
try
{
//mydb.obj_sqlconnection.ConnectionString = ConfigurationManager.ConnectionStrings["cesConnectionString"].ToString();
mydb.OpenConnection();
rowsaffected = mydb.obj_sqlcommand.ExecuteNonQuery();
}
finally
{
mydb.CloseConnection();
mydb.obj_sqlcommand.Dispose();
}
return rowsaffected;
}
return 0;
}
请说明你如何使用这个类的方法 – Steve
我已经更新了这篇文章。请看这里 –
从这段代码我不能确定这个错误来自哪里。你会在哪一行发生异常?发生异常时,您是否尝试使用调试器来检查连接的状态? – Steve