Работа с данными

Библиотеки

Будут нужны:

using System.Data

using System.Data.OleDb

using System.Globalization

Присоединение к базе

//Attributes
public const string DB_CONN_STRING =
    "Driver={Microsoft Access Driver (*.mdb)}; "+
    "DBQ=D:\CS\TestDbReadWrite\SimpleTest.mdb";

Виды SQL-команд

Есть четыре вида операций:

  • чтение данных (запрос возвращает данные)
  • обновление данных (запрос возвращает количество затронутых записей)
  • добавление данных (запрос возвращает количество затронутых записей)
  • удаление данных (запрос возвращает количество затронутых записей)

Чтение данных

Производится с помощью класса OleDbDataReader

Шаги, которые нужны:

Создать соединение, открыть его

OleDbConnection conn =
    new OlebConnection(DB_CONN_STRING);
conn.Open();
  

Выполнить SQL-запрос к базе:

OleDbDataReader dr;
OleDbCommand cmd =
    new OleDbCommand( "SELECT * FROM Person", conn );
dr = cmd.ExecuteReader();

Считать все записи

while (dr.Read())
{
    System.Console.WriteLine( dr["FirstName"] );
}

закрыть соединение

finally
{
    // Close the connection
    if (conn.State == DBObjectState.Open)
    {
        conn.Close();
    }
}

Чтение полей разных типов

Например так:

DateTime tUpdated =(DateTime)dr["Updated"];

Или так:

int nOrdinalAge = dr.GetOrdinal("Age");
if (dr.IsDBNull(nOrdinalAge))
{
    System.Console.WriteLine(" Age  : Not given!");
}
else
{
    int nAge = dr.GetInt32( nOrdinalAge );
    System.Console.WriteLine(" Age  : " + nAge);
}

Выполнение SQL-команд

int nNoAdded = cmdAdder.ExecuteNonQuery();

После выполнения команды можно сделать commit, тогда изменения станут сразу отражатся в возвращаемых данных

cmd.ActiveConnection.BeginTransaction();
cmd.ActiveConnection.CommitTransaction();

Настройки

Где хранить строку соединения?

Можно в файле со строковыми ресурсами
(см. http://firststeps.narod.ru/ dotnet/45.html, http://firststeps.narod.ru/ dotnet/46.html и http://firststeps.narod.ru/ dotnet/47.html)

Можно в реестре (см. http://firststeps.narod.ru /dotnet/140.html)

А правильно - в xml-файлах конфигурации

ASP.NET

Установка, см. http://www.d otsite.spb.ru/articles/aspnet/installing.asp  

страницы

Основные идеи:

1) ASPX-страница это HTML-текст с тегами двух видов: обычные теги отсылаются браузеру, а необычные обрабатываются на сервере. Необычные теги - это серверные элементы управления (server controls). Эли элементы имеют свойства и методы и составляют часть объектной модели страницы. Доступ к объектной модели можно получить из кода.

2) Каждой ASPX-странице сопоставлен некоторый код, который находится в отдельном файле с классом. В начале страницы указывается в каком именно файле находится этот код и на каком языке этот код написан.

Server Controls

Есть два вида контролов:

  1. Любой тег HTML с атрибутом runat="server" становится контролом
  2. Есть расшренные контролы в пространстве asp (называются Rich Server Controls)

Использование контролов снижает скорость выдачи страницы, но незначительно (потери - несколько часов в год, см. http://www.aspnextgen.com/tutorials.aspx?tutorialid=17 )

Элементы, перечисленные ниже отображаются на теги HTML 3.2

<asp:Button>
 
<asp:LinkButton>
 
<asp:ImageButton>
 
<asp:HyperLink>
 
<asp:TextBox>
 
<asp:CheckBox>
 
<asp:RadioButton>
 
<asp:DropDownList>
 
<asp:ListBox>
 
<asp:Image>
 
<asp:Label>
 
<asp:Panel>
 
<asp:Table>
 
<asp:TableRow>
 
<asp:TableCell>
 

Кроме этого там есть другие элементы, например AdRotator и календарь.

При желании можно написать свои элементы (см. http://www.aspnextgen.com/tutorials.aspx?tutorialid=20)

Примеры

Для разминки см. http://samples.gotdo tnet.com/quickstart/aspplus/

Пример проекта см. http://www.ibuyspy.com

Web-сервисы

Это программы, которые могут возвращать некоторую информацию, и к которым можно обратиться зная их URL. Они основываются на стандартах XML, SOAP, WSDL и UDDI.

См. http://samples.gotdotnet.com/quickstart/aspplus/doc/webservicesintro.aspx

Клиентские приложения

Работают с Web-сервисами.

См. http://samples.gotdotnet.com/quickstart/aspplus/doc/applications.aspx



Опубликовал admin
14 Июн, Понедельник 2004г.



Программирование для чайников.