Использовать переменную(ссылочного типа) из одного метода в другом - C#

Узнай цену своей работы

Формулировка задачи:

Требуется вытащить из Buttoun1_Click переменную FB, что бы использовать в Start_Click, т.к у меня там идет запрос в бд и всякая магия. (руками и кулаками не бьем, в книге Г.Шилдта не нашел я себе ответа); p.s код весь писал я. p.s.s Я всю жизнь писал на Delphi на C# 4-ый день работаю.
 public void button1_Click(object sender, EventArgs e)
        {
            // Подключение к Базе данных
            // Антиламерская уловка
            if ((Login.Text == "") | (pass.Text == "")) // проверяем ввод логина и пароля
            {
                MessageBox.Show("Введите логин и пароль!"); // оповещаем, что ламер - ламер! :3 
            }
            else
            {
                try
                {
                   FbConnection fb = new FbConnection("Charset=win1251;DataSource=127.0.0.1;Port=3051;" + "User=" + Login.Text + ";" + "Password=" + pass.Text + ";" + "Database=C:\\fssp\\db\\ncore-fssp-1.20.217.273.39.fdb;");
                    fb.Open();
                    cs.ForeColor = Color.Green;
                    cs.Text = "♥ Connect";
                    Log.Text = "Успешное подключение к базе данных, можете начать работу.";
 
                }
                catch (FbException)
                {
                    MessageBox.Show("Извините вы не можете подключиться к базе данных:\n 1. Вы не правильно ввели логин и пароль.\n 2. У вас нет доступа к базе данных.\n 3. База данных отключена\n");
                    Log.Text = "Ошибка! Не удалось подключиться к базе данных.1. Вы не правильно ввели логин и пароль.\n 2. У вас нет доступа к базе данных.\n 3. База данных отключена\n ";
                }
            }

        }
 private void Start_Click(object sender, EventArgs e)
        {
            string data;
            FileStream fout;

            if (S1.Checked == true)
            {
                 
                FbCommand Select = new FbCommand("SELECT *FROM EXT_AVAILABILITY_ACC_DATA;", fb);
                FbTransaction fbt = fb.BeginTransaction(); 
                Select.Transaction = fbt;
                ////////////////
                // считывалка с таблицы
                FbDataReader reader = Select.ExecuteReader();
                //куда записывать будем >.> ? а х точно 
                fout = new FileStream("C:\\123.txt", FileMode.Create);
                // мутим трай и цикл вайл, пока идет считывание. все данные топают в DATA
                try
                {
                    while (reader.Read())
                    {
 
                        data = data + reader.GetInt64(0).ToString() + " | " + reader.GetString(1) + " | " + reader.GetString(2) + " | " + reader.GetString(3) + " | " + reader.GetString(4) + " | " + reader.GetString(5) + " | " + reader.GetString(6) + " | " + reader.GetString(7) +
                            "\n";
 
                    }
                }
                finally
                {    ///////////////// записываем полученные данные и вырубаемся с транзикции
                    StreamWriter f_record = new StreamWriter(fout);
                    f_record.Write(data + "\n");
                    Console.ReadKey();
                    fbt.Commit();
Или как вариант лучше создать отдельный класс, прописать весь коннект к базе и просто использовать) Но, мне интересен первый способ.

Решение задачи: «Использовать переменную(ссылочного типа) из одного метода в другом»

textual
Листинг программы
2
3
4
5
6
7
8
9
10
public static class Glbl
{
      public static Scintilla scintilla1;
}
public partial class MainWindow : Window
    {
        public MainWindow()
        {
              Glbl.scintilla1 = (Scintilla)wfh.Child;
              ..............................................

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4.2 из 5
Похожие ответы