2017-01-12 2 views
-1

У меня есть класс с несколькими методами.C# Конструкция класса для метода String

Вот моя функция отображения:

public void Connect(string SourceFile, OleDbConnection Connection, OleDbCommand Command) { zConnect(SourceFile, Connection, Command); } 
    public void Tablenames2cmb(OleDbConnection Connection, ComboBox TargetComboBox) { zTablenames2cmb(Connection, TargetComboBox); } 
    public void Tablenames2cmb(OleDbConnection Connection, string Exclusion, ComboBox TargetComboBox) { zTablenames2cmb(Connection, Exclusion, TargetComboBox); } 
    public string GetUser(OleDbConnection Connection, OleDbCommand Command, OleDbDataReader Reader, string username) { zGetUser(Connection, Command, Reader, username); } 

Первые 3 метода компиляции просто отлично. Но строковые методы дают мне ошибку, что нет возврата.

Метод:

private string zGetUser(OleDbConnection Connection, OleDbCommand Command, OleDbDataReader Reader, string username) 
    { 
     string result = "Foo"; 
     return result; 
    } 

Я предполагаю, что я сделал глупую ошибку с отображением функции, но я не могу понять, что это такое.

+0

zGetUser .. должен быть getuser? – Trey

+2

Это не конструктор, это метод, и сообщение об ошибке правильное, вы не возвращаете значение. Вам нужно вернуть значение. – Servy

+0

- это опечатка 'zGetUser' метода? –

ответ

2

Вы не возвращает строку из метода GetUser. Его корпус не имеет возвращаемого значения:

public string GetUser(OleDbConnection Connection, OleDbCommand Command, OleDbDataReader Reader, string username) 
{ 
    return zGetUser(Connection, Command, Reader, username); 
} 

Иногда помогает менее умное форматирование.

+0

О, дорогая ... вот и все. Вы абсолютно правы. Спасибо. – mykds

+1

Ну, мне нравится, когда я могу поместить все в одну строку, но мне не нравится намного больше, чтобы прокручивать, чтобы увидеть код. – Steve

2

ваш метод должен возвращать значение метода он называет:

public string GetUser(OleDbConnection Connection, OleDbCommand Command, OleDbDataReader Reader, string username) 
{ 
    return zGetUser(Connection, Command, Reader, username); 
} 
2

Вы, вероятно, пропустил оператор возврата здесь

public string GetUser(OleDbConnection Connection, OleDbCommand Command, OleDbDataReader Reader, string username) { return zGetUser(Connection, Command, Reader, username); }
Смежные вопросы