Использование делегата декомпилятора и сравнение в вычисляемых свойствах - PullRequest
2 голосов
/ 20 марта 2019

Я использую декомпилятор делегатов в моем проекте.https://github.com/hazzik/DelegateDecompiler

Модель сущности (часть):

public long Id { get; set; }

public long ItemId { get; set; }

public long InfoItemId { get; set; }

[Computed]
public bool IsInfo
{
    get
    {
        return (InfoItemId > 0 && ItemId == 0) ? true : false;
    }
}

Модель присоединения:

private class AttachmentModel
{
    public string OriginalFileName { get; set; } 
    public string ItemFileType { get; set; }
    public string Thumbnail { get; set; }
    public string File { get; set; }
    public string Category { get; set; }
    public bool IsInfo { get; set; }
}

Запрос (часть):

Attachments = (from attachments in db.Attachments
                                        where attachments.ItemId == i.Id || attachments.InfoItemId == infoId
                                        select new AttachmentModel
                                        {
                                            OriginalFileName = attachments.ItemOriginalFileName,
                                            ItemFileType = attachments.ItemFileType,
                                            Thumbnail = attachments.FileThumbnailRelative,
                                            File = attachments.FileUrlRelative,
                                            Category = attachments.ItemFileCategory,
                                            IsInfo = attachments.IsInfo.Computed()
                                        }).ToList()

НоЯ получил сообщение об ошибке:

LINQ to Entities не распознает метод метода Boolean ComputedBoolean, и этот метод нельзя преобразовать в выражение хранилища.

Q:Можно ли использовать делегат декомпилятора в этом случае?Как?Пожалуйста, приведите пример.

...