Я создаю программу с двумя формами (регистр и просмотр). Форма представления будет читать одну запись из таблицы (базы данных), а затем вы можете отредактировать или удалить запись. Я создаю класс для этой программы, и для одного из конструкторов он получит идентификатор поиска, имя и фамилию из формы представления, а затем будет метод, который будет искать в таблице для записи (используя идентификатор поиска , OR firstname и lastname) и назначит переменные внутри класса, и я хочу использовать THOSE-переменные для своих методов редактирования и удаления, но проблема в том, что я пытаюсь создать общедоступный объект класса, который будет использоваться во всех мои события, используя ключевое слово «this», он говорит, что это не существует в текущем контексте, но всякий раз, когда я создаю объект в каждом случае, он распознает ключевое слово «this», но я не смогу использовать класс переменные, назначенные из метода поиска. Это мой конструктор и поиск методы классаКак создать единый объект и использовать значения в разных событиях?
public ASystem(searchSHD search)
{
searchHID = search.searchHID;
search_FName = search.searchFName;
search_LName = search.searchLName;
}
public String searchHID;
public String search_FName;
public String search_LName;
public String HID;
public String First_Name;
public String Full_Name;
public String query;
public String Last_Name;
public String PhoneNum;
public String Country;
public String DOB;
public String Experience;
public void Search()
{
using (OleDbConnection db_connection = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\KAZEM\Documents\Hairsalon\employees.accdb;
Persist Security Info=False;"))
{
if (searchHID == "")
{
query = "SELECT * FROM Hairdresser where First_Name = @FName AND Last_Name = @LName";
}
else
{
query = "SELECT * FROM Hairdresser where HID = @HID";
}
using (OleDbCommand db_command = new OleDbCommand(query, db_connection))
{
db_command.Parameters.Add("@HID", searchHID);
db_command.Parameters.Add("@FName", search_FName);
db_command.Parameters.Add("@LName", search_LName);
db_connection.Open();
OleDbDataReader reader = db_command.ExecuteReader();
reader.Read();
HID = reader.GetValue(0).ToString();
First_Name = reader.GetString(1);
Last_Name = reader.GetString(2);
Full_Name = First_Name + " " + Last_Name;
Country = reader.GetString(4);
PhoneNum = reader.GetString(5);
DOB = (Convert.ToDateTime(reader.GetValue(3))).ToString();
Experience = reader.GetValue(6).ToString();
}
}
}
Просьба указать точную строку ошибки и точный текст ошибки. – juharr
Покажите нам код, создающий экземпляр вашего объекта ASystem (тот, у которого есть «это» в нем) вместе с генерируемой ошибкой компиляции. –