I need to switch an entity to internal. So I create it. No build/runtime error. But when I want to use the DbSet object I can’t because the object seems not initialized !
My ContextEntities:
public partial class Entities
{
internal DbSet<Employee> EmployeeSet { get; set; }
}
I use like this:
Entities context = new Entities();
List<Employee> employees = context.EmployeeSet.ToList();
But “EmployeeSet” is null. I think it’s because it is not instantiated in get. It works if I use public like this:
public partial class Entities
{
public DbSet<Employee> EmployeeSet { get; set; }
}
Questions:
Can it work if a DbSet is marked internal? If so how? Why does that break it?
(thanks Scott Stafford)
It will not be automatically instantiated if it is not set to
public. You can manually instantiate it usingSet<TEntity>()method.