Как хранить и извлекать значения в другом методе С#?

Предположим, у меня есть эти два метода:

  1. В методе1 мы присваиваем значения ModelClass.`

     method1(ModelClass mc)
     {
         mc.name = "ABC";
         mc.contact = 123;
         mc.salary = 123.00;
         //how to store this data for use in method2 here 
     }
    
  2. method2 - это параметризованный метод, параметры которого отличаются от класса модели.

     method2(string Address, long officeContact)
     {        
         //and how to retrieve stored data from method1 to use here
         Hashtable ht = new Hashtable();
         ht.Add("@name", method1.name);
         ht.Add("@contact", method1.contact);
         ht.Add("@salary ", method1.salary);
    
         ht.Add("@Address", Address);
         ht.Add("@officeContact", officeContact);
    }
    

Как использовать несколько значений от метода1 до метода2. Пример кода поможет понять мой вопрос.

Вам нужно прояснить это, мне и, возможно, другим неясно, чего вы на самом деле пытаетесь достичь и в чем проблема.

TheGeneral 22.12.2020 02:46

я хочу получить данные метода1 (которые я назначил в методе1) в метод2.

Abhishek Rana 22.12.2020 02:56

В этом коде есть несколько ошибок компилятора. во-первых, эти методы не имеют возвращаемых типов, во-вторых, вы вызываете метод1 как свойство, когда это метод. Просто вызовите метод1 в методе2, когда вы это сделаете, с какой проблемой вы столкнетесь?

TheGeneral 22.12.2020 02:58

Если цель состоит в том, чтобы данные, назначенные в методе 1, были доступны в методе 2, возможно ли, что оба метода являются частью одного и того же класса, который, возможно, может хранить копию ModelClass, переданную в методе 1, в свойстве класса?

Dash 22.12.2020 03:20
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
4
117
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

В вашем примере method1 устанавливает свойства объекта, который вы передаете.

Чтобы дополнительно изменить экземпляр ModelClass, вам нужно либо добавить еще один параметр к method2 типа ModelClass:

method2(string Address, long officeContact, ModelClass mc)...

ИЛИ

Экземпляр ModelClass, используемый в method1, должен находиться в той области, в которой method2 может его видеть. Так:

void SomeMainMethod()
{
   var mainClass = new MainClass();
   method1(mainClass);
   method2("some address", 1);
}

Пересмотрено method2

 method2(string Address, long officeContact)
 {        
     //and how to retrieve stored data from method1 to use here
     Hashtable ht = new Hashtable();
     ht.Add("@name", mainClass.name);
     ht.Add("@contact", mainClass.contact);
     ht.Add("@salary ", mainClass.salary);

     ht.Add("@Address", Address);
     ht.Add("@officeContact", officeContact);
}

пересмотренный метод2, дающий нулевое значение. Потому что я использую json для входного значения (используется в ModelClass). поэтому я могу получить данные только из метода 1, я использую сеанс, но это также дает ошибку.

Abhishek Rana 22.12.2020 03:15

Не могу помочь вам дальше. Это действительно основные вещи.

The Muffin Man 22.12.2020 03:29

Другие вопросы по теме