пятница, 24 сентября 2010 г.

Урок №9 Запрос на две таблицы


from c in db.Category
from p in db.Product
where p.CategoryID == c.CategoryID
select new
{
    c.CategoryName,
    p.ProductName
};

Урок №7 Узнать поточную дату

DateTime.Now

Урок №8 Linq и редактирование DataGridView

           IEnumerable<Client> myssQuery = from p in ds.Clients
                                                                  select p;
           ObservableCollection<Client> source = new ObservableCollection<Client>();
           foreach (Client mmodel in myssQuery)
               source.Add(mmodel);
           dataGridView2.DataSource = source;


Для збереження:

            try
            {
                ds.SubmitChanges();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }

четверг, 23 сентября 2010 г.

Урок №4 Двойные циклы

Первый двойной цикл:
for (int i = 0, j = 0; i < 10 && j < 35; i++, j++)
Второй двойной цикл:
for (int i = 0, j = 0; i < 10 | j < 35; i++, j++)

Урок №3 Шифр Цезаря

Шифровка:
        public static string coding(string text,string key)
        {
            string cod=null;
            for (int i = 0,j = 0; i < text.Length; i++, j++)
            {
                cod+=Convert.ToChar((int)text[i] + (int)key[j]);
                if (j == key.Length-1) { j = 0; }               
            }
            return cod;           
        }
Дешифровка:

        public static string acoding(string text, string key)
        {
            string cod = null;
            for (int i = 0, j = 0; i < text.Length; i++, j++)
            {
                cod += Convert.ToChar((int)text[i] - (int)key[j]);
                if (j == key.Length - 1) { j = 0; }
            }
            return cod;
        }
              
            

Урок №4 Загрузка данных с RichTextBox

OpenFileDialog open = new OpenFileDialog();
open.DefaultExt = "*.txt";
open.Filter = "TEXT Files|*.txt";
if (open.ShowDialog() == System.Windows.Forms.DialogResult.OK &&     open.FileName.Length > 0)
{
          RichTextBox.LoadFile(open.FileName, RichTextBoxStreamType.PlainText);
}


А сохранить данные так: RichTextBox.SaveFile("DeCoding.txt");

вторник, 21 сентября 2010 г.

понедельник, 20 сентября 2010 г.

Урок №6 Генерация чисел

От нуля до 99 включительно:
Random random = new Random();
random.Next(100);

Урок №5 Время выполнения алгоритма

DateTime dtBegin = DateTime.Now;
DateTime dtEnd = DateTime.Now;
TimeSpan result = dtEnd - dtBegin;


Еще один способ:
Stopwatch sw =Stopwatch.StartNew();

 sw.Stop();
sw.ElapsedMilliseconds.ToString();

Урок №4 Выход из программы

Application.Exit();

Урок №7 Вычисления





            DataClasses1DataContext ds = new DataClasses1DataContext();
            foreach (var t in ds.tovars)
            {
                t.summa = t.kol * t.cena;
            }
            ds.SubmitChanges();
            dataGridView1.DataSource = ds.tovars;


Другой пример с другой базой данных:



            ds = new DataClasses1DataContext();
            Tovar qvery = ds.Tovars.Single(s => s.Name == "Book");
            qvery.Cena +=Convert.ToDecimal(textBox1.Text);
            ds.SubmitChanges();
            dataGridView1.DataSource = ds.Tovars;



Еще один пример:



           ds = new DataClasses1DataContext();
            var Qvery = from s in ds.Tovars
                        where s.Name == "Book"
                        select s;
            foreach (Tovar t in Qvery)
                t.Cena = 0;
            ds.SubmitChanges();
            dataGridView1.DataSource = Qvery;



И еще пример:



           NorthwindDataContext db = new NorthwindDataContext();

            var products = from p in db.Products
                           where p.OrderDetails.Count > 2
                           select new
                           {
                               ID = p.ProductID,
                               Name = p.ProductName,
                               NumOrders = p.OrderDetails.Count,
                               Revenue = p.OrderDetails.Sum(o => o.UnitPrice * o.Quantity)
                           };

            GridView1.DataSource = products;





И еще один пример:



            ds = new DataClasses1DataContext();
            var Qvery = from c in ds.client
                        from t in ds.taruf
                        where c.tarufid == t.id
                        select new
                        {
                            ПІБ=c.name,
                            Вартість_тарифного_плану=t.cena,
                            Кількість_ПК=c.kilk,
                            Вартість =t.cena * c.kilk
                        };
            dataGridViewClient.DataSource = Qvery;


Вычисление данных из двух таблиц и запись в базу данных:



 public int[] idClient()
        {          
            int[] Qvery = (from p in ds.client
                          select p.id).ToArray();
            len=Qvery.Length;
            return Qvery;
        }
        public void SummaUpdateClient(int[] u)
        {           
            for (int i = 0; i < len; i++)
            {
                client c = ds.client.First(p => p.id.Equals(u[i]));
                taruf t = ds.taruf.First(j => j.id.Equals(c.tarufid));
                c.summa = c.kilk * t.cena;
                ds.SubmitChanges();
            }           
        }

суббота, 18 сентября 2010 г.

Урок №4 Update

Product product = db.Products.First(p => p.ProductName.StartsWith("Scott's"));
                            product.UnitPrice += 2.25m;
                            db.SubmitChanges();

Урок №6 Поиск

Нужно вывести все слова в которых есть буква "t":
 var qvery = from a in str
                  where a.Contains("t")
                  select a;

Урок №3 Вывод слов которые больше имеют больше чем 4 символа

var qvery = str.Where(a=>a.Length>=4);

Урок №3 Разбитие строчки на массив строк


string sentence = "the quick brown fox jumps over the lazy dog";
string[] words = sentence.Split(' ');

Урок №1 Исключительные ситуации

Пример исключительной ситуации:

            try
            {
                db.SubmitChanges();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }

Урок №5 Фильтрация

 Фильтрация данных по полю TextBox:
var myіsQuery = from p in db.BaseTable
                          where p.Name.StartsWith(TextBox.Text.Trim().ToString())
                          select p;

Урок №4 Группировка

Группировка данных по полю Name, и вывод информации в СomboBox
var myQuery = from p in db.BaseTable
                        group p by p.Name into groupName
                        select new { groupName.Key };


            comboBoxFilter.DisplayMember = "Key";
            comboBoxFilter.DataSource = myQuery;


После группировки поле p.Name превращается в groupName.Key.



Урок №3 Вставка данных

                Table table = new Table();
                table.Pole1 = t_pole1.Text;
                table.Pole2 = Convert.ToInt32(numeric_pole2.Value);
                float d = (float)Convert.ToDouble(numericUpDownPole3.Value);
                table.Pole3 = d;
                table.Pole4 =Convert.ToDateTime(monthCalendarPole4.SelectionStart);
                if (radioButton1.Checked == true)
                { table.kernel = radioButton1.Text; }
                else
                { table.kernel = radioButton2.Text; }
                 
                db = new BaseTable();               
                db.Distributions.InsertOnSubmit(table);
                db.SubmitChanges();              


Вставка до двух связных таблиц:



            Client client = new Client();
            client.PIB = t_PIB.Text;
            client.DataConnect=DateTime.Now;
             int IDtaruf = (from p in ds.Tarufs

                                 where p.Name==comboBoxTarif.Text
                                 select Convert.ToInt32(p.IDtaruf)).First();
            client.ID_Tarufa=Convert.ToInt32(IDtaruf);
            ds = new DataClasses1DataContext();
            ds.Clients.InsertOnSubmit(client);
          
            User user = new User();
            user.Client = client;
            user.IDuser =Convert.ToInt32(123);
            user.Login = t_Login.Text;
            user.Password = t_Password.Text;

            ds.Users.InsertOnSubmit(user);
            ds.SubmitChanges();

              

Урок №2 Удаление данных

Выбираем данные с  ListBox и удаляем данные с базы данных:
 var delete =  from pole in db.Table
                    where pole.Name == ListBox.SelectedValue
                    select name;

            foreach (var name in delete)
            {
                db.Table.DeleteOnSubmit(name);
            }

            try
            {
                db.SubmitChanges();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());               
            }

Как создать отчет с помощью Crystal report

http://www.youtube.com/watch?v=gqHsrK7mfy8&feature=related

пятница, 17 сентября 2010 г.

Урок №2 Сортировка

 string[] str = { "0", "1", "2","5","10" };
 int[] array = str.Select(s => Int32.Parse(s)).OrderBy(s=>s).ToArray();

 foreach (int t in array)
 {
          Console.WriteLine(t);
 }
 Console.ReadKey();

Урок №1 SQL Преобразования типов string[] в int[]

 string[] str = { "0", "1", "2" };
 int[] array = str.Select(s => Int32.Parse(s)).ToArray();

Урок №1 Linq

Вывод данных которые которые заканчиваться на "end":

 var items = from s in str
                  where s.EndsWith("end")
                  select s;

Урок №2 SQL Название колонок

Чтоб прописать имена колонок:
SELECT Name as Название
Название - имя колонки
Удобно подключать до DataGridView, не нужно прописывать в коде.
dataGridView1.Columns[0].HeaderText = "Название";

Уроки №3 Свойства DataGridView

Для того, чтоб изменить название колонки:
 DataGridView.Columns[0].HeaderText = "Название";
Не показывать колонку №6:
dataGridView2.Columns[6].Visible = false;
или
dataGridView2.Columns["Name"].Visible = false;
Выравнивание столбиков по названию:
 dataGridView1.AutoResizeColumns();
Выравнять третий столбик по содержимому:
dataGridView2.Columns[2].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells;
Выделение только по строкам:
SelecttionMode = FullRowSelect
Считать данные со всех строк которые выделены:

 foreach (DataGridViewRow dr in dataGridView3.SelectedRows)
                Convert.ToInt32(dr.Cells[0].Value);

Чтоб удалить одну строку в DataGridView:
dataGridView3.Rows.RemoveAt(dataGridView3.SelectedRows[0].Index);
Чтоб считать одно значение я DataGridView:
 int r =Convert.ToInt32(this.dataGridView3.CurrentRow.Cells[0].Value);
Для того, что задать отображения первых 10 первых записей:
dataGridView.DataSource = Qvery.Take(10);

Чтение данных с DataGridView
for (int i = 0; i < dataGridView1.Columns.Count; i++)
for (int j = 0; j < dataGridView1.Rows.Count - 1; j++)
dataGridView1.Rows[j].Cells[i].Value.ToString();








Уроки №2 Ввод данных с monthCalendar

Для вводу данных с monthCalendar:
Convert.ToDateTime(monthCalendar.SelectionStart);

Урок №1 NumericUpDown

Ввод дробовых данных с numericUpDown
Для вводу дробовых данных, мы должны поменять свойство компоненты при инициализации:
 public StartForm()
        {
            InitializeComponent();
            numericUpDown.DecimalPlaces = 2; 
// 2 цифры после комы.
            numericUpDown1.Minimum = 2;
            numericUpDown1.Maximum = 100;
// Диапазон ввода чисел        
        }
float d = (float)Convert.ToDouble(numericUpDown.Value);
// Преобразовываем в float, если нужно добавить данные к базе данных MS SQL Server, поле типа real,  Double не совместимый с типом real который в базе данных.

Урок №1

Для соединения с базой данных которая находиться в самом проекте:
public string str = @"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Linux.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";

Для чтения с файла  app.config нужно добавить using System.Configuration;, а также в референс.
 string connectionString = ConfigurationManager.ConnectionStrings["MvcTaskListConnectionString"].ConnectionString;

Подключаемся к Excel:
string ConnectionString = String.Format(
"Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties=\"Excel 8.0;HDR=No\";Data Source={0}", filename);