У меня строго типизированное представление MVC3 Razor, в котором я хочу отобразить одну или другую ссылку в зависимости от того, существует ли дочерний объект в модели. Я не могу сказать, как проверить наличие объекта, что, по моему мнению, было бы довольно просто. Я использую Entity Framework 4.1 для генерации базовых отношений, базы данных и сущностей.
Мои классы POCO (сокращенно):
public class Pet
{
public int PetID { get; set; }
public virtual InsurancePolicy InsurancePolicy { get; set; }
}
public class InsurancePolicy
{
[ForeignKey(Pet)]
public int InsurancePolicyID { get; set; }
public virtual Pet Pet { get; set; }
}
На мой взгляд, я хотел оценить что-то вроде:
@foreach(var item in Model)
{
@if(string.IsNullOrEmpty(item.InsurancePolicy.InsuranceID.ToString()))
{
@Html.ActionLink("action link to create new InsurancePolicy")
}
else
{
@Html.ActionLink("action link to edit existing InsurancePolicy")
}
}
Конечно, если у объекта Pet еще нет ассоциированного InsurancePolicy, условное условие не выполняется: ссылка на объект не установлена для экземпляра объекта. Мне не удалось найти эквивалент IsObject или какой-либо способ оценить отсутствие объекта без появления этой ошибки.
Может кто-нибудь указать мне, как сделать эту работу?