Поддерживаются только инициализаторы, члены сущности и навигационные свойства сущности. (ASP.NET MVC и Entity Framework)

Я застрял где-то на моем приложении ASP.NET MVC 3. вот ошибка, которую я получаю :

Указанный член типа 'AccommPropertyTags' не поддерживается в LINQ to Entities. LINQ to Entities. Поддерживаются только инициализаторы, члены сущности и поддерживаются только инициализаторы, члены сущности и навигационные свойства сущности.

Я нашел, как это можно решить в следующей статье:

Поддерживаются только инициализаторы, члены сущности и навигационные свойства сущности

Но мой вариант немного странный.

Вот один из частичных классов моей сущности :

[MetadataType(typeof(AccommPropertyWebDetail.MetaData))]
public partial class AccommPropertyWebDetail {

    public virtual ICollection AccommPropertyTags {

        get {

            return Helpers.AccommPropertyTag.CreateStringListFromString(this.PropertyTags);
        }
    }

    private class MetaData {

        [Required, StringLength(50)]
        public string Category { get; set; }

    }
}

Как вы можете видеть выше, AccommPropertyTags свойство является typeof ICollection. То, что я пытаюсь сделать внутри моего контроллера, выглядит следующим образом:

public ViewResult Tag(string tag) {

    var _rawTag = HttpUtility.UrlDecode(tag);

    ViewBag.Tag = _rawTag;

    var model = _accommpropertyrepo.GetAllAccommPropertiesFullWebIgnoringApprovalStatus();

    model = model.Where(
            x => x.AccommPropertyTags.Any(
                    y => y == _rawTag
                )
        );

    return View(model);
}

Из-за того, что я использую Any, Entity пытается преобразовать мое свойство AccommPropertyTags в SQL и не может, потому что оно не является частью схемы таблицы.

Я действительно застрял здесь или есть способ победить эту раздражающую ошибку?

5
задан Community 23 May 2017 в 10:27
поделиться