Рассылка закрыта
При закрытии подписчики были переданы в рассылку "BloggLand и Я | Блоггландия" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
← Январь 2005 → | ||||||
1
|
2
|
|||||
---|---|---|---|---|---|---|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
10
|
11
|
12
|
13
|
14
|
15
|
16
|
17
|
19
|
20
|
21
|
22
|
23
|
|
24
|
26
|
27
|
28
|
29
|
30
|
|
31
|
Статистика
0 за неделю
В тридцать втором выпуске рассылки '.Net Собеседник' вы можете узнать о том,
Информационный Канал Subscribe.Ru |
.Net Собеседник #32
Содержание- От автора
- Обзор новостей
- Слой доступа к данным для выполнения хранимых процедур (ХП)
- Время кода - readonly поля и константы
- Форумы .Net на www.sql.ru
От автора
Здравствуйте, коллеги!
Знаете ли вы, что именовать классы, переменные и т.д. и т.п. можно, используя русские символы? Может и не стоит привыкать, особенно если вы работаете в транснациональной корпорации или заняты в аутсорсинг-проекте, но тем не менее:
using System; namespace TestConsoleApplication { class Class1 { [STAThread] static void Main(string[] args) { Привет п = new Привет(); п.вывод_привета(); string колесо = "колесо"; int киеву1500 = 1500; byte юбилей = 50; Console.WriteLine(колесо.Length); // ну и т.д. } } class Привет { public Привет() { } public void вывод_привета() { Console.Write("Привет, ребята!!!"); }}} |
На этом всё - желаю интересного чтения.
Обзор новостей
-
Live Journal блог
от hDrummer'a
- В дополнение к рассылке решил попробовать вести ещё и блог, надеюсь на обратную связь и обмен мнениями по поводу как улучшить, усовершенствовать и т.д. Заходите в гости.
-
Задерживается выход Visual
Studio 2005 Beta 2 и релиза
- Слухи о задержке выпуска релиза Visual Studio 2005 получили подтверждение с установкой новых дат выхода Beta 2 (конец марта-начало апреля), а релиза – в сентябре месяце.
-
Снижена цена на TierDeveloper
4.0 Professional Edition
- Идя навстречу требованиям пользователей, AlachiSoft снизила цену на TierDeveloper 4.0 Professional Edition до $395. TierDeveloper – инструмент генерации кода и объектно-реляционного маппинга кода.
-
Вышел Lattice.DataMapper 1.1
- Lattice.DataMapper - инструмент для привязки объектов .NET к БД, использующий для этого внешние конфигурационные файлы XML или файлы привязки. Доступ к данным вынесен в XML и может включать как запросы на SQL, так и вызовы ХП.
-
Вышел
Aspose.TextBox.Web 2.0
- Компонент Aspose.TextBox.Web – визуальный серверный компонент ASP.Net, предлагающим пользователям полноценный редактор.
-
ComponentOne® выпустила
Studio Enterprise™ 2005 v1
- ComponentOne выпустила Studio Enterprise 2005 v1. В этом выпуске содержится более 45 обновлений компонент .NET WinForms и ASP.NET WebForms.
-
Вышел
FarPoint’s Spread for Web Forms v2
- FarPoint’s Spread for Web Forms v2 – профессиональная сетка данных/редактор электронных таблиц для ASP.NET, поддерживающая редакцию ячеек, импорт/экспорт файлов MS Excel, ссылки на формулы, , 16 типов ячеек, объединения ячеек, заголовки, 300 встроенных формул, иерархический просмотр, и многое другое.
-
SQL Tool для аудита SQL БД
- Apex SQL Tools выпустила новую версию инструмента для аудита БД Apex SQL Audit. Apex SQL Audit – это инструмент с отчётами, строящимися по технологии ASP.NET, настраиваемыми шаблонами, лёгким управлением триггерами и т.п. Бесплатная поддержка и обновления на протяжении всего периода использования продукта.
-
Вышел ASP.NET
Chat Pro v3.0
- Попробуйте новую версию ZBit ASP.NET Chat Pro. Много новых особенностей, улучшенная функциональность бана, многоязычная поддержка, не используется Java и ActiveX.
-
Открылся
Русский Channel 9
- Channel 9 – это проект по открытию секретов Microsoft. Здесь опубликованы видеоролики, показывающие, как живет Microsoft: экскурсия по кампусу Microsoft в Редмонде, видеоинтервью с сотрудниками Microsoft, рассказы о том, как разрабатываются продукты Microsoft. Channel 9 – это общение, максимально открытое общение сотрудников Microsoft и пользователей технологий Microsoft. Channel 9 – это не инструмент маркетинга или PR. Channel 9 – это домашнее видео, не стоит здесь ждать роликов, снятых профессиональными операторами, смонтированных профессиональными монтажерами, придуманных профессиональными режиссерами - ролики снимаются обычными сотрудниками Microsoft с использованием обычных любительских видеокамер. Идея Channel 9 пришла из авиации. Авиакомпания United Airlines сделала в своих самолетах на 9 канале для наушников пассажиров передачу переговоров экипажа – пассажиры могли в течение полета слушать то, что происходит в кабине пилотов. Channel 9 – это попытка показать «кабину пилотов» Microsoft, показать как создаются новые продукты, как живут разработчики Microsoft. Channel 9 вначале появился на английском языке (channel9.msdn.com), а теперь этот проект доступен и на русском, для чего мы решили использовать тот факт, что из 20000 разработчиков в кампусе Microsoft в Редмонде минимум 1000 говорят на русском языке. Так что «скоро на экранах»! :)
Слой доступа к данным для выполнения хранимых процедур (ХП)
Слой доступа к данным для выполнения хранимых процедур (ХП)
ЯЗЫК:
Автор статьи: Surapureddy Sriram
ПЕРЕВОД: Чужа В.Ф. ака hDrummer
КОД К СТАТЬЕ:
Callingapp.zip ,
Dataaccesslayer.zip
В этой статье рассказано каким образом можно выполнить одну или несколько ХП из слоя приложения. Поскольку слой доступа к данным полностью отделен от слоя приложения, нам необходимо только лишь изменить слой приложения при изменениях в схеме БД.
Эта статья в основном рассматривает исполнение ХП, не возвращающих набор данных. Хотя всё сказанное относится и к таким ХП, которые возвращают наборы данных.
Слой доступа к данным
Ключевые элементы:
- Структура ParamData
- Класс StoredProcedure
- Класс StoredProcedureCollection
- Класс Execute
struct ParamData { public string pName,pValue; public SqlDbType pDataType; public ParamData(string pName,SqlDbType pDataType,string pValue) { this.pName=pName; this.pDataType=pDataType; this.pValue=pValue; } } |
Класс Stored Procedure, у которого есть методы SetParam и GetParam для установки и считывания параметров. Объект добавляется в массив, который и содержит объекты класса ParamData.
public void
SetParam(string pName,SqlDbType pDataType,string
pValue) { ParamData pData=new ParamData(pName,pDataType,pValue); // добавляем в массив sParams. sParams.Add(pData); } |
public ArrayList
GetParams() { if (!(sParams==null)) { return sParams; } else { return null; }} |
public void add(StoredProcedure
value) { List.Add(value); } public void Remove(int index) { if (index > Count - 1 || index < 0) { Console.WriteLine("No data to remove"); } else { List.RemoveAt(index); } } |
public StoredProcedure Item(int Index) { return (StoredProcedure) List[Index]; } |
public static
bool ExecuteSps(StoredProcedureCollection spCollection,SqlConnection
Connection) { try { foreach(StoredProcedure spData in spCollection) { SqlCommand cmd=new SqlCommand(); int i=0; if (Connection.State!= ConnectionState.Open) Connection.Open(); cmd.Connection=Connection; cmd.CommandType=CommandType.StoredProcedure; cmd.CommandText=spData.ProcName; IEnumerator myEnumerator = spData.GetParams().GetEnumerator(); while (myEnumerator.MoveNext()) { ParamData pData=(ParamData)myEnumerator.Current; cmd.Parameters.Add(pData.pName,pData.pDataType); cmd.Parameters[i].Value=pData.pValue; i=i+1; } cmd.ExecuteNonQuery(); } return true; } catch(Exception exc) { return false; } } |
Слой приложения
В слое приложения мы должны добавить ссылку на библиотеку DataAccessLayer.dll. После добавления такой ссылки мы можем вызывать функции слой доступа к данным по мере необходимости. Преимуществом такого подхода является возможность динамического добавления/удаления параметров по мере изменения ХП.
private void button1_Click(object
sender, System.EventArgs e) { SqlConnection connection=new SqlConnection(); //измените строку подключения на свою string connectString="Persist Security Info=False;Integrated Security=SSPI;database=DB1;server=Server2;Connect Timeout=60"; connection.ConnectionString=connectString; if (connection.State!=ConnectionState.Open) connection.Open(); DataAccessLayer.StoredProcedureCollection spCollection=new DataAccessLayer.StoredProcedureCollection(); DataAccessLayer.StoredProcedure spData=new DataAccessLayer.StoredProcedure(); spData.ProcName=txtSpName.Text; spData.SetParam(txtParam1.Text,SqlDbType.VarChar,txtParamValue1.Text); spData.SetParam(txtParam2.Text,SqlDbType.VarChar,txtParamValue2.Text); spCollection.add(spData); if (DataAccessLayer.Execute.ExecuteSps(spCollection,connection)) MessageBox.Show("Successfully executed"); } } catch(Exception exc) { return false; } } |
Время кода
readonly поля и
константы
ЯЗЫК: C#
АВТОР: Чужа В.Ф., dotnetgrains.sql.ru
Различие между readonly полями и константами состоит в том, что константа при компиляции в сборке заменяется на своё значение, а поле только для чтения заменяется на своё значение уже при выполнении программы. Отсюда вытекает вот такой интересный код:
using System; namespace hDrummer.ReadOnlyFields { class clReadOnlyFields { [STAThread] static void Main(string[] args) { Console.WriteLine(clReadOnly.w.W.ToString()); Console.WriteLine(clReadOnly.year); } } class clReadOnly { public static readonly Man w = new Man(79.88F); public const int year = 2004; // так делать нельзя! //public const Weight w1 = new Weight(79.88F); } class Man { private float w; public Man(float w) { this.w = w; } public float W { get {return w;} set {w = value;} } } } //Вывод на экран //79,88 //2004 |
На этом всё.
{К содержанию}
Форумы .Net - вопросы оставшиеся без ответа
Server
too buzy
ASP.NET
+ ??? = WML
Описание
к сборке
Убить
Request
ComException
ошибка на русском языке
создание
базы данных и таблицы Access
ADO
.NET
Parametr
fields в Crystal Reports
Как
заблокировать Windows Toolbar?
На этом тридцать второй выпуск .Net Собеседника закончен.
До следующего номера.
Чужа Виталий Ф. aka hDrummer,
hdrummer@sql.ru - жду ваши предложения и замечания.
http://subscribe.ru/
http://subscribe.ru/feedback/ |
Подписан адрес: Код этой рассылки: comp.soft.prog.dotnetgrains |
Отписаться |
В избранное | ||