Привязка данных VB.NET Модель с использованием цикла while

#vb.net

#vb.net

Вопрос:

NET Пытается привязать данные к модели из сохраненных процессов с помощью цикла while; пожалуйста, посоветуйте, как заставить работать мой следующий код; который преобразуется с помощью Telerik Converter.

  Try
            Using reader As SqlDataReader = cmd.ExecuteReader()
                While reader.Read()
                login.Add(New LoginDetails() With { _
                    Name = reader("EmployessFullName").ToString(), _
                    Win_UserName = reader("win_username").ToString() _
                })
                End While
            End Using
            con.Close()
        Catch ex As Exception
            Throw New Exception(ex.Message)
        End Try
  

Мой фактический код на C # приведен ниже

  try
            {
                using (SqlDataReader reader = cmd.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        login.Add(new LoginDetails()
                        {
                            Name = reader["EmployessFullName"].ToString(),
                            Win_UserName = reader["win_username"].ToString()
                        });
                    }
                }
                con.Close();
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
  

Комментарии:

1. Я вижу, где вы обновляете значения источника данных (предположительно, экземпляра login), но я не вижу никакого кода, который обновляет источник данных для базового элемента управления. Пример = myGrid.DataSource = логин

2. это я пытаюсь сделать общедоступный IEnumerable<LoginDetails> GetUserLoginDetails(строковое имя пользователя, строковый пароль) { List<LoginDetails> login = новый список <LoginDetails>(); // Сделайте что-нибудь, чтобы вернуть login; }

3. Ошибка, возникающая из-за входа в систему. Добавьте(New LoginDetails() с помощью { _ name = reader(«EmployessFullName»). toString(), _ недопустимый синтаксис

4. Убрать подчеркивание

Ответ №1:

Основываясь на ваших комментариях, вы должны изменить свой код, чтобы он соответствовал синтаксису, который выполняется в элементе управления Telerik (вы забыли ключевое слово With):

 login.Add(new LoginDetails()
With
{
    Name = reader["EmployessFullName"].ToString(),
    Win_UserName = reader["win_username"].ToString()
});
  

Или путем создания экземпляра LoginDetails в его собственной переменной:

 LoginDetails loginDetails = new LoginDetails();

loginDetails.Name = reader["EmployessFullName"].ToString()
loginDetails.Win_UserName = reader["win_username"].ToString()

login.Add(loginDetails);
  

Комментарии:

1. привет #NoAlias мой код на C # правильный; но я хочу преобразовать их в VB

2. Обычно вы не получите ответы на такие вопросы. Проверьте эту ссылку: converter.telerik.com

3. Я уже использовал Telerik Converter для преобразования моего кода C # в VB; и это создало проводной код;

4. # NoAlias оба ваших решения написаны на C#;