Member 8010354 Ответов: 1

Как добавить значение в переменную


Привет,

Я должен отправить электронное письмо, и у меня есть код электронной почты. В этом есть параметры (например, адрес электронной почты, a, b и т. д.). Таким образом, отправляя электронное письмо, он берет информацию из параметров. Мои сомнения таковы
public static void SendEmail(string FirstName, string LastName, string emailAddress, string BODY, string TASKID)


В вышеупомянутой строке я использовал строку emailAddress в качестве одного из параметров и написал код для получения адреса электронной почты на другой странице, как показано ниже:


List<String> updateAddresses = new List<String>();
            foreach (var person in personResults.Results)
            {
                string addr = null;

                addr = person.Artifact.Fields.Single(
                        field => field.Guids.Contains(GUIDCollection.EMAIL_ADDRESS_GUID)
                    ).ValueAsFixedLengthText;

                if ((addr != null) && (addr != ""))
                {
                    updateAddresses.Add(addr);
                }
            }


Итак, теперь, если do emailAddress = updatedAddress.Add (addr), это дает ошибку. Теперь как получить значение в строке введено? Любая помощь будет оценена по достоинству.

Что я уже пробовал:

Попробовал переименовать строку addr в emailAddress. Не уверен, правильно это или нет.

ZurdoDev

Сообщение об ошибке сообщит вам и нам, в чем проблема. Пожалуйста, нажмите кнопку улучшить вопрос и добавьте сообщение об ошибке.

1 Ответов

Рейтинг:
12

OriginalGriff

Когда вы объявляете метод, например метод SendEmail, вы предоставляете параметры, которые состоят из типа данных и имени переменной для хранения данных.
Это точно так же, как у вас был этот встроенный код:

string myName = "OriginalGriff";
string yourName = "Member 8010354";
...
string userName = myName;
username = "The user's name is: " + userName;
Console.WriteLine(userName);
...
username = yourname;
username = "The user's name is: " + userName;
Console.Writeline(username);
...
Вы могли бы взять "общий код" и сделать его методом:
public void ShowUsername(string userName)
   {
   username = "The user's name is: " + userName;
   Console.Writeline(username);
   }
...
string myName = "OriginalGriff";
string yourName = "Member 8010354";
ShowUsername(myName);
ShowUsername(yourName);
Имя переменной параметра имеет значение только внутри метода, оно не может быть доступно снаружи.

В вашем случае все, что вам нужно сделать, это вызвать SendEmail и передать ему соответствующие данные параметров:
SendEmail("Original", "Griff", originalGriffEmailAddress, "Hello!", "I have no idea what a task id is");
До тех пор, пока переменная originalGriffEmailAddress существует и содержит мой адрес электронной почты в виде строки, это будет работать.

Более конкретным я быть не могу: вы не показываете, где вы вызываете метод, или где тот код цикла foreach, который вы показываете, вписывается в вашу программу.


Maciej Los

5ед!