У меня есть хранимая процедура в ASP.NET MVC, которая возвращает класс viewmodel. Это достигается с помощью метода db.StoredProcedureName.CallStoredProc(SPParams)
.
Эта модель представляет собой серию целых чисел. Все эти целые числа относятся к другой таблице, поэтому вместо того, чтобы объединять их более 20 раз в моем коде хранимой процедуры, я попытался установить его с помощью внешних ключей в моей модели.
Ниже приведены образцы моих занятий. Тем не менее, он всегда возвращает ноль для прикрепленных виртуальных классов И в этом случае все они - отношения один-к-одному.
public class SProcReturn
{
public int value1 { get; set; }
public int value2 { get; set; }
public int value3 { get; set; }
[ForeignKey("value1")]
public virtual ValueTranslation value1Translation { get; set; }
[ForeignKey("value2")]
public virtual ValueTranslation value2Translation { get; set; }
[ForeignKey("value3")]
public virtual ValueTranslation value3Translation { get; set; }
}
И мой класс перевода (таблица в базе данных):
public class ValueTranslation
{
[Key]
public int valuekey { get; set; }
public string valuedescription { get; set; }
}
Я надеялся получить информацию о переводе для всех целочисленных возвратов из хранимой процедуры, переведенную для использования дополнительной информации в таблице перевода (на самом деле она больше 2 столбцов). Однако все виртуалы возвращают null
. Я не уверен, что это механизм использования хранимых процедур и привязки этих наборов результатов к таблице?