Форум программистов
 
О проблемах, например, с регистрацией пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > ASP.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу здесь за 20 тыс руб в месяц! alarforum@yandex.ru


Ответ
 
Опции темы
Старый 10.11.2011, 20:06   #1
lowercase
Пользователь
 
Регистрация: 15.05.2010
Сообщений: 88
Печаль Ошибка при подключении к базе данных Object reference not set to an instance of an object.

доброго времени суток. изучаю C# вот и уже дошло дело до того что курсувою надо делать. преподаватель который у меня принимает лабораторные вобще ничерта не знает. я чесно говоря непонимаю, как таких еще на работу в вузы берут, знает то он програмирование может и нормально но изложить материал вобще не умеет. лабораторные вобще наполовину нерабочие и сделаны так что студент ничего не поймет: коментариев к коду минимум (типо эта функция показывает список.. эта редактирует), так что понять, что в нутри того или иного метода, не зная предворительно что находится в том или ином пространстве имен или классе довольно таки трудно...
собственно в чем проблема: пытаюсь я своими ручка сделать базу данных с 1й табицей (просто для того чтобы понять сам процес) по аналогии с лабораторной работой. далее. есть метод класса:
Код:
		public int save() {
			using (SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["store"].ConnectionString)) {
				using (SqlCommand command = new SqlCommand("goods_iu", connection)) {
					command.CommandType = CommandType.StoredProcedure;
					command.Parameters.Add(new SqlParameter("@good_id", good_id));
					command.Parameters.Add(new SqlParameter("@good_name", good_name));
					command.Parameters.Add(new SqlParameter("@notes", notes));
					connection.Open();
					return Convert.ToInt32(command.ExecuteScalar());
				}
			}
		}
для сохранения данных в базу данных. когда я запускаю проэкт на выполнение, ввожу в поля данные и жму соответственно кнопку которая выполняет код вызывающий этот метод, то у меня выскакивает ошибка: Object reference not set to an instance of an object. и указывет на строчку(смотрим скрин):
Код:
using (SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["store"].ConnectionString))
и я непойму почему именно тут? ведь, на сколько я понял, эта ошибка означает, что незаданая ссылка на экземпляр обьекта, у меня же создается SqlConnection connection = new ...
единственное что я могу предположит не создан обьект который указывается скобках в качестве пареметра констурктора SqlConnection(ConfigurationManager. ConnectionStrings["store"].ConnectionString) но ведь configurationmanager это же(я кончено могу ошибатся) статический класс? я непойму. обьясните если кто может. буду весьма благодарен.
Изображения
Тип файла: jpg Без імені.jpg (123.1 Кб, 131 просмотров)
lowercase вне форума Ответить с цитированием
Старый 20.11.2011, 21:48   #2
Napkin
Пользователь
 
Аватар для Napkin
 
Регистрация: 09.12.2009
Сообщений: 25
По умолчанию

Судя по всему исключение происходит здесь:
Код:
ConfigurationManager.ConnectionStrings["store"].ConnectionString
Этот код означает получение строки подключения к БД с названием "store".
Т.е. у Вас в конфигурационном файле app.config (или web.config - в зависимости от типа приложения) должна быть строка подключения вроде:
Код:
<connectionStrings>
  <add name="store" connectionString="server=localhost;database=YourDatabaseName;Integrated Security=True" lockItem="true"/>
</connectionStrings>
если такой строки у Вас нет, то как раз ошибка "Object reference not set to an instance of an object" и будет происходить.
PS не забывайте про проверки объектов на null, чтоб не ловить постоянно такие эксепшены
Удел сильных - уделывать слабых
Napkin вне форума Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ошибка - Run-time error '91' Object variable or With block variable not set Артур Иваныч Microsoft Office Excel 13 12.09.2012 13:18
Err 91 : Object variable or With block variable not set pla Microsoft Office Access 7 18.10.2011 14:42
run-time error 91 (object variable or with block variable not set) mrs.petrushina Microsoft Office Access 5 19.04.2011 11:59
run-time error 91 (object variable or with block variable not set) mrs.petrushina Microsoft Office Excel 7 04.04.2011 23:22
Ошибка! ActiveX component can't create object! Insainer Microsoft Office Access 0 27.01.2008 11:13


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS
Здесь нужно купить рекламу за 7 тыс руб в месяц! )
пишите сюда - alarforum@yandex.ru
ИКС 840