Anonymous 13 Ответов: 1

Не удается неявно преобразовать тип System.данных.объект DataTable' в 'int' как я могу исправить это?


Cannot implicitly convert type 'System.Data.DataTable' to 'int'


Я делаю это в 3-уровневой архитектуре.

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

public int Doctor_appointment(query qr)
{
    cmd.Parameters.AddWithValue("@Name", qr.Name);
    cmd.Parameters.AddWithValue("@Place", qr.Place);
    cmd.Parameters.AddWithValue("@Date", qr.Date);
    cmd.Parameters.AddWithValue("@Time", qr.Time);
    DataTable r = extablestore("Doctor_Page_appointment", cmd);
    return r ;
}

CPallini

Почему такой метод должен возвращать int? Более уместно возвращать DataTable, не так ли?

Anonymous 13

не могли бы вы объяснить это, пожалуйста??

[no name]

А почему бы и нет? В конце концов, он работал на JavaScript и PHP.

Типы-это просто выдумка каких-то садистов, которые хотят свести нас всех с ума. :-)

1 Ответов

Рейтинг:
0

OriginalGriff

Посмотрите на определение метода:

public int Doctor_appointment(query qr)
Теперь посмотрите на то, что вы пытаетесь вернуть:
DataTable r = extablestore("Doctor_Page_appointment", cmd);
return r ;
Datatable может содержать много целых чисел и иметь несколько свойств и методов, возвращающих целочисленные значения: система не знает, какое значение вы хотите вернуть, и не может угадать.
Вероятно, вы хотите вернуть datatable, поэтому измените определение метода на:
public DataTable Doctor_appointment(query qr)
Но без глубокого знания остальной части вашей системы мы не можем сказать-поэтому посмотрите, как вы собираетесь использовать этот метод,и решите.


[no name]

Что будет дальше? Тип безопасности? Это так похоже на 1980-е годы. :-)