Я использую «Entity Framework 6» для загрузки данных из базы данных. В настоящее время я хочу загрузить данные из представления, а не из таблицы с ef6. Я создал класс только со свойствами (обычный старый c# объект (poco)).
Вы можете увидеть класс poco здесь:
public class Person {
public string Name { get; set; }
public int? PhoneNumber { get; set }
public int? Age { get; set; }
}
Затем я хочу загрузить просмотреть с помощью этого кода:
var sql = "SELECT Name, PhoneNumber, Age from Person;"
using(var context = new PersonContext()){
var personList = context.Database.SqlQuery<Person>(sql).toList();
}
Во время выполнения программа выдает следующую ошибку:
The specified cast from a materialized 'System.Int16' type to the 'System.Int32' type is not valid.
Итак, я знаю тип свойства и базу данных столбцы типа не равны. Но как я могу найти, какое свойство в коде не равно столбцу базы данных? Поскольку в реальном приложении у меня много свойств, этот вопрос важен для меня, чтобы найти свойство.