Чтение из базы данных
Eсть база данных VPN в ней таблица accounting_data надо считать в ней определенные столбцы. Создаем подключение через entity.
1 контекст данных
public class accounting_dataContext : DbContext
{
public accounting_dataContext() : base("VPN")
{ }
public DbSet<accounting_data> accounting_data { get; set; }
}
2 описываем класс
public class accounting_data
{
public int Id { get; set; }
public string User_Name { get; set; }
}
3 пробуем получить данные из первой строки
using (accounting_dataContext db = new accounting_dataContext())
{
var accounting = db.accounting_data
.Select(c => new
{
Id = c.Id,
User_Name = c.User_Name
})
.FirstOrDefault();
db.SaveChanges();
}
И получаю пустой объект accounting = null где ошибка?
что бы было понятнее вот так выглядят столбцы данных
]1
Ответы (1 шт):
Сами ентити нужно тоже описать. Как они представлены в базе так же как и ключи. Используйте скафолд для того, что бы получить аклуальный контекст бд и все.
В Visual Studio: Package Manager Console (обычно в вкладках снизу). Нужно указать параметры вашей базы данных и параметров авторизации к ней:
https://docs.microsoft.com/en-us/ef/core/miscellaneous/cli/powershell
Пример: scaffold-dbcontext "data source={{data_source}};initial catalog={{db_name}};persist security info={{True/False}};user id={{user_name}};password={{password}}" Microsoft.EntityFrameworkCore.SqlServer -OutputDir ChangesFew -tables {{shema}}.{{TableName}}, {{shema}}.{{TableName}} -Force