У меня есть класс Персонал, который имеет отношение к FunctionType.EF: установка значения для столбца внешнего ключа во время Create() принудительно перезагружает от иностранных объектов?
public partial class Personnel
{
#region Primitive Properties
public virtual long Id
{
get;
set;
}
public virtual string Name
{
get;
set;
}
public virtual Nullable<long> FunctionType_Id
#endregion
#region Navigation Properties
public virtual FunctionType FunctionType
#endregion
}
Я следующие FunctionTypes в базе:
id | name
---+-----
5 | five
10 | ten
Когда я создаю новый персонала объект вроде этого:
var p = new Personnel
{
Name = "abc",
FunctionType_Id = 5
};
и добавить этот объект к DbSet:
dbSet.Add(p);
и сохранить его (контекст является DbContext):
context.SaveChanges();
ФВ получает первый все связанные с Персоналии FunctionType = 5, прежде чем добавить объект с помощью оператора INSERT в базе данных? (Для отслеживания этого я использовал SQL Profiler)
Этот запрос может оказать отрицательное влияние на производительность в случае, если много человек уже связано с этим FunctionType.
Может кто-нибудь объяснить, что не так в дизайне?
Просьба предоставить однозначный код, который имеет смысл. 'FunctionType = 5' не будет компилироваться, если нет неявного преобразования. Некоторые свойства отображаются как поля. – Eranga
Исправлено: «FunctionType_Id = 5» –
Показать сегмент кода, в котором вы сохраняете объект. – Eranga