Работа с БД в ASP.NET
Релиб
Форумы       Участники    Календарь    Кто он-лайн?
Добро пожаловать, гость ( Вход | Регистрация )
        



Работа с БД в ASP.NET Expand / Collapse
Автор
Сообщение
14.08.2007 9:55


Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 08.07.2008 13:23
Сообщ.: 229, Visits: 1 980
День добрый!

Поскажите пожалуйста, если можно без ссылок на ртфм... просто мне срочно нужно разобраться с одним вопросом прямо-таки сегодня... на чтение в данный момент времени нет (книжки по asp.net я заказал в библиотеке предприятия, но сейчас время не терпит к сожалению

мне нужно получить доступ к БД в asp.net притом в asp простом у меня это выглядело следующим образом:

Set db = Server.CreateObject("ADODB.Connection")

Set rs = Server.CreateObject("ADODB.Recordset")

db.Open "TR6"

// база TR6 у меня подключена как System DSN и все настройки подключения в настройках System DSN, поэтому строка подключения такая простая... база Access запароленная...

sSQL = "SELECT * FROM Table"

Set rs = db.Execute(sSQL)

if NOT rs.EOF Then

Do While NOT rs.EOF

Responce.Write rs("Object") & "<BR>"

rs.MoveNext

Loop

end if

мне крайне необходимо получить аналогичный код для ASP.NET а именно VB

заранее спасибо

Сообщ. #915314
14.08.2007 10:44
Supreme Being

Supreme Being

модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240, Visits: 65 445
Если переводить напрмяую, то код будет выглядеть так:

Imports System.Data.Odbc
...
Dim connectionString As String = "Dsn=TR6"
Using connection As New OdbcConnection(connectionString)
    Dim queryString As String = "SELECT * FROM Table"
    Dim command As New OdbcCommand(queryString, connection)

    connection.Open()

    Using reader As OdbcDataReader = command.ExecuteReader()
        While reader.Read()
            Response.Write(reader.GetString(reader.GetOrdinal("Object")) & "<BR>")
        End While
    End Using
End Using

Однако такой подход не рекомендуется к использованию в ASP.NET как неудобный для поддержки. Для разделения логики и представления надо использовать серверные элементы управления. В данном случае хорошо подойдет Repeater.

Сообщ. #915317
14.08.2007 10:59


Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 08.07.2008 13:23
Сообщ.: 229, Visits: 1 980
и в очередной раз спасибо тебе =)

кстати не подскажешь ещё книжки по ASP.NET желательно VB какие получше будут (чтобы заказать в библиотеке) и может у тебя есть что в электронном варианте (пока эти бюрократы купят сто лет пройдёт...)?

на данный момент мне надо быстро просто реализовать функциёвину... а дальше уже размеренно, углубленно будем изучать...

заранее спасибо...

Сообщ. #915318
14.08.2007 11:15
Supreme Being

Supreme Being

модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240, Visits: 65 445
Из книг ничего посоветовать не могу. Я осваивал ASP.NET по документации и статьям из инета. Слышал хорошие отзывы о книгах Дино Эспозито: "ASP.NET 2.0 Базовый курс" и "ASP.NET 2.0 Углубленное изучение". Обе эти книги есть у меня в электронном виде (81 Мб, формат djvu). Примеры там на C# приводятся.
Сообщ. #915319
14.08.2007 11:40
Supreme Being

Supreme Being

модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240, Visits: 65 445
Я тебе, кстати, уже скидывал эти книги :)
Сообщ. #915321
14.08.2007 12:57


Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 08.07.2008 13:23
Сообщ.: 229, Visits: 1 980
почему-то ругается на эту строку:

  Response.Write(reader.GetString(reader.GetOrdinal("Object")) & "<BR>"

говорит что "отсутствуют данные для строки или столбца"

хотя в таблице Table есть поле с именем Object и соответственно в этом поле есть значение... не могу понять... пока что...

есть мысли?

Сообщ. #915323
14.08.2007 13:23
Supreme Being

Supreme Being

модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240, Visits: 65 445
А тип поля какой? Если не строковый, то надо использовать другую функцию для чтения данных соответствующую типу данных.
Сообщ. #915324
14.08.2007 13:59


Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 08.07.2008 13:23
Сообщ.: 229, Visits: 1 980
эта Table создаётся запросом на создание таблицы в Access так что там все поля строковые... есть ещё варианты в чём проблема может быть?
Сообщ. #915331
14.08.2007 14:12


Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 08.07.2008 13:23
Сообщ.: 229, Visits: 1 980
кстати ещё одна фитча... заремировал строку вывода reader-а

и попросил просто в цикле написать 123...

записей в таблице штук 100, а "123" - скрипт вывел только один раз...

почему?

 

+ bazile ты не посоветуешь какую-нибудь библиотеку для работы с графиками/диаграммами и прочими "рисоватостями"... просто задачи возникают на всевозможные графики, круговые диаграммы и т.д. желательно чтобы работали с БД...

я вот пока ничего лучше .netCharting не нашёл...

Сообщ. #915332