Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Вызов хранимой процедуры - Истекло время ожидания. / 20 сообщений из 20, страница 1 из 1
15.01.2009, 14:58
    #35759348
Sanek
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры - Истекло время ожидания.
Уважаемые Гуру, подскажите пожалуйста ...

Я пока чайник в C# , но пытаюсь научиться этому делу ...

RPT_MEGA_SATableAdapter - в dataSet ссылается на хранимую процедуру.

вызываю так :

Код: plaintext
1.
DataBase.REPORT_MOBILEDataSetTableAdapters.RPT_MEGA_SATableAdapter ReportData = new DataBase.REPORT_MOBILEDataSetTableAdapters.RPT_MEGA_SATableAdapter();
Myreport.BSReport.DataSource  = ReportData.GetData();

Процедура работает около минуты, а прога отваливается через 30 сек. со словами :

"Истекло время ожидания. Время ожидания истекло до завершения операции или сервер не отвечает."

нужно решение типа такого : http://www.sql.ru/forum/actualthread.aspx?tid=616646&hl=%e2%f0%e5%ec%ff+%ee%e6%e8%e4%e0%ed%e8%ff

только для моего случая ... никак не въеду как это сделать ...
...
Рейтинг: 0 / 0
15.01.2009, 15:13
    #35759392
vagner
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры - Истекло время ожидания.
Если речь, в конечном итоге, идет о xxxDataAdapter, то у него есть SelectCommand, а у нее уже необходимый Вам таймаут.
...
Рейтинг: 0 / 0
15.01.2009, 15:22
    #35759422
Sanek
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры - Истекло время ожидания.
К сожалению не нашел там SelectCommand

есть только то, что в прикрепленном файле
...
Рейтинг: 0 / 0
15.01.2009, 15:24
    #35759431
Sanek
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры - Истекло время ожидания.
попробовал сделать через

ReportData.Adapter.SelectCommand.CommandTimeout = 600;

но в процессе выполнения появляется ошибка ...
...
Рейтинг: 0 / 0
15.01.2009, 15:35
    #35759465
vagner
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры - Истекло время ожидания.
Не заметил Mobile, значит там все не так. Из приведенного заинтересовало свойство - Adapter, может, у него есть SelectCommand?
...
Рейтинг: 0 / 0
15.01.2009, 15:39
    #35759480
Sanek
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры - Истекло время ожидания.
нет, это не мобильное приложение ... это все для винды ...
свойство то есть , но не устанавливается ...
...
Рейтинг: 0 / 0
15.01.2009, 15:51
    #35759529
vagner
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры - Истекло время ожидания.
SelectCommand появляется после того, как будет установлен. Вы привели не весь код.
При создании SqlDataAdapter можно либо в консрукторе передать текст команды, либо, ее надо будет создавать позже явно. Вы не делаете ни того, ни другого, но утверждаете, что что-то выполняется, значит код не весь.
RPT_MEGA_SATableAdapter это Ваш класс? ТОгда покажите метод GetData.
...
Рейтинг: 0 / 0
15.01.2009, 16:21
    #35759652
Sanek
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры - Истекло время ожидания.
Это мой класс .. я сделал его через графическую оболочку ...

(повторюсь, я C# вообще не видел до этого )

вот как это у меня видно :

RPT_MEGA_SA - та самая процедура, которая долго работает
...
Рейтинг: 0 / 0
15.01.2009, 16:44
    #35759740
vagner
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры - Истекло время ожидания.
Никогда так не делал, так что извините.
А среди свойств Fill нет таймаута? Или то, что на картинке это все?
...
Рейтинг: 0 / 0
15.01.2009, 16:48
    #35759753
Sanek
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры - Истекло время ожидания.
это все ...
тогда может иначе стоит задать вопрос ...

мне нужно сгенерить отчет на основе процедуры RPT_MEGA_SA, которая лежит на SQL Сервере 2005

для этого мне нужен дата сет ...
как мне его получить ?
...
Рейтинг: 0 / 0
15.01.2009, 17:11
    #35759842
vagner
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры - Истекло время ожидания.
Например:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
		public DataSet GetDS ( string spName, SqlConnection cnct )
		{
			SqlCommand cmd = new SqlCommand ( spName, cnct );
			cmd.CommandType = CommandType.StoredProcedure;
			cmd.CommandTimeout = 2 * 60 * 1000; // 2 min * sec * msec
			SqlDataAdapter da = new SqlDataAdapter ( cmd );
			DataSet ds = new DataSet ( );
			da.Fill ( ds );
			return ds;

		}
spName - имя Вашей хранимки
cnct - подключение к БД
...
Рейтинг: 0 / 0
15.01.2009, 17:22
    #35759872
vagner
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры - Истекло время ожидания.
Вот только я не знаю, где Вы вытащите SqlConnection? Я в том смысле, что у Вас оно уже где-то определено. Но, конечно, можно и ручками:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
			SqlConnectionStringBuilder csb = new SqlConnectionStringBuilder ( );
			csb.DataSource = "MySqlServer";
			csb.InitialCatalog = "MyReportDb";
			csb.UserID = "User";
			csb.Password = "Psw";
			csb.IntegratedSecurity = false;

			SqlConnection cnct = new SqlConnection ( csb.ToString ( ) );
Только не забывайте, что соединение нужно открывать и закрывать.
Обычно с соединениями работают так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
string ConnectionString = "...";
DataSet ds = null;
using ( SqlConnection cnct = new SqlConnection ( ConnectionString ) )
{
  cnct.Open ( );
  ds = GetDS ( "myReportStoredProc", cnct );
  cnct.Close ( );
}

Ну, и еще всякая лабуда: try-catch, ООП, паттерны, DAL, BL, NHibernate ...

Удачи :)
...
Рейтинг: 0 / 0
15.01.2009, 17:27
    #35759891
Sanek
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры - Истекло время ожидания.
Большое спасибо !

Модератор: Тема перенесена из форума "C#.NET".
...
Рейтинг: 0 / 0
02.11.2009, 21:21
    #36287036
valkb
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры - Истекло время ожидания.
.Adapter.UpdateCommand.CommandTimeout =
...
Рейтинг: 0 / 0
02.11.2009, 21:58
    #36287085
слоненок
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры - Истекло время ожидания.
А может нужно было просто код ХП переписать?
...
Рейтинг: 0 / 0
03.11.2009, 16:01
    #36288758
stimpi
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры - Истекло время ожидания.
Sanek,
то что вы прикрепили в графическом редакторе свойств, на самом деле там отображаются только свойства помеченные атрибутом [Browsable] , возможно там где-то и есть свойство, но вы его никогда не увидите, надо смотреть Class View, ну или заглянуть что же все-таки сгенерировалось автокодом в датасете и прописать там ручками что надо.
...
Рейтинг: 0 / 0
27.01.2010, 11:07
    #36433036
Eugene.ev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры - Истекло время ожидания.
Добрый день уважаемые гуру. Я только начинаю работать с Visual C# обращаюсь к вам с помощью в решении задачи:

1. Необходимо реализовать запуск Хранимой процедуры на SQL Server 2005 по нажатию на кнопку и передачу в эту хранимую процедуру параметров из поля, выпадающего списка в form.


Метод Аутентификации Windows

Подскажите полностью весь код который нужно вставить в
private void button7_Click(object sender, EventArgs e)
{

}


входящий параметр будет указан в
private void textBox1_TextChanged(object sender, EventArgs e)
{

}


Очень признателен за помощь...
...
Рейтинг: 0 / 0
27.01.2010, 11:19
    #36433096
stimpi
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры - Истекло время ожидания.
Eugene.ev
1. Необходимо реализовать запуск Хранимой процедуры на SQL Server 2005 по нажатию на кнопку и передачу в эту хранимую процедуру параметров из поля, выпадающего списка в form.


((YoursDataType)Combobox.SelectedItem).ID - значение из комбобокса

Метод Аутентификации Windows

IntegratedSecurity=True - прописать в ConncectionString



Подскажите полностью весь код который нужно вставить в


открываем MSDN и курим SqlConnection, SqlCommand, SqlParameter , примеров там полно
...
Рейтинг: 0 / 0
27.01.2010, 11:20
    #36433102
Eugene.ev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры - Истекло время ожидания.
Спасибо. :)
Может все же опишете пример. Я уже массу всего перечитал.
...
Рейтинг: 0 / 0
27.01.2010, 12:20
    #36433289
stimpi
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вызов хранимой процедуры - Истекло время ожидания.
Eugene.evСпасибо. :)
Может все же опишете пример. Я уже массу всего перечитал.

Это пример из MSDN для SqlConnection, что тут непонятно ?
создает строку соединения и конектится к БД
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
private static void OpenSqlConnection()
{
    string connectionString = GetConnectionString();

    using (SqlConnection connection = new SqlConnection())
    {
        connection.ConnectionString = connectionString;
        connection.Open();

       
    }
}

static private string GetConnectionString()
{
    // To avoid storing the connection string in your code, 
    // you can retrieve it from a configuration file.
    return "Data Source=MSSQL1;Initial Catalog=AdventureWorks;"
        + "Integrated Security=true;";
}

Это пример из того же MSDN для SqlCommand + 2 изменения
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
private static void UpdateDemographics(Int32 customerID,
    string demoXml, string connectionString)
{
    // Update the demographics for a store, which is stored 
    // in an xml column. 
    string commandText = "StoredProcedureName";

    using (SqlConnection connection = new SqlConnection(connectionString))
    {
        SqlCommand command = new SqlCommand(commandText, connection);

        command.Parameters.Add("@ID", SqlDbType.Int);
        command.Parameters["@ID"].Value = customerID;
        command.CommandType = CommandTypes.StoredProcedure;
        // Use AddWithValue to assign Demographics.
        // SQL Server will implicitly convert strings into XML.
        command.Parameters.AddWithValue("@demographics", demoXml);

        try
        {
            connection.Open();
            Int32 rowsAffected = command.ExecuteNonQuery();
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.Message);
        }
    }
}

а теперь склейте все что написано выше в ваши методы

ЗЫ читаем MSDN по выше описанным классам до просветвления
...
Рейтинг: 0 / 0
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Вызов хранимой процедуры - Истекло время ожидания. / 20 сообщений из 20, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]