У меня есть объект загрузки в моей модели данных EF.Два его свойства, Size и BytesDownloaded, вычисляют, чтобы дать мне свойство Progress, которое я создал в частичном классе:
partial class Download
{
public int Progress
{
get
{
if (!Size.HasValue || Size.Value == 0) return 0;
return Convert.ToInt32(Math.Floor(100.0 * ((double)BytesDownloaded / (double)Size)));
}
}
}
В моем WPF-интерфейсе у меня есть:
<DataGridTemplateColumn x:Name="progressColumn" Header="Progress" Width="*">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ProgressBar Value="{Binding Path=Progress, Mode=OneWay}" Maximum="100" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
Поскольку Progress не является частью Entity Model (edmx), я должен уведомить пользовательский интерфейс о том, что он должен обновить ProgressBar.Я думал, что мог бы сделать это так:
partial void OnBytesDownloadedChanging(long value)
{
ReportPropertyChanging("Progress");
}
partial void OnBytesDownloadedChanged()
{
ReportPropertyChanged("Progress");
}
Это скомпилируется нормально, но когда я запускаю приложение и вызываются OnBytesDownloadedChanging / Changed, я получаю это исключение при моем вызове ReportPropertyChanging / Changed:
Свойство Progress не имеет действительного сопоставления сущностей для объекта сущности.Для получения дополнительной информации см. Документацию Entity Framework.
Я понимаю, что говорится в сообщении об ошибке, но я не понимаю, что я могу сделать, чтобы действительно достичь своей цели.
PS - На какую конкретно «документацию» они вообще ссылаются?Вздох!Если они намекают, что для этой ошибки есть документация, почему бы просто не связать меня с документацией, вместо того, чтобы [бессмысленно] пытаться найти ее?