У меня есть класс, созданный инфраструктурой сущности (Document
). Он имеет коллекцию другого класса (FileInfo
).Entity Framework отменяет добавленные/удаленные элементы в EntityCollection
/// <summary>
/// No Metadata Documentation available.
/// </summary>
[EdmEntityTypeAttribute(NamespaceName="DocumentManagerModel", Name="DocumentContainer")]
[Serializable()]
[DataContractAttribute(IsReference=true)]
public partial class DocumentContainer : EntityObject
{
...
/// <summary>
/// No Metadata Documentation available.
/// </summary>
[XmlIgnoreAttribute()]
[SoapIgnoreAttribute()]
[DataMemberAttribute()]
[EdmRelationshipNavigationPropertyAttribute("DocumentManagerModel", "FK__FileInfo__00000000000018FA", "FileInfo")]
public EntityCollection<FileInfo> FileInfoes
{
get
{
return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedCollection<FileInfo>("DocumentManagerModel.FK__FileInfo__00000000000018FA", "FileInfo");
}
set
{
if ((value != null))
{
((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedCollection<FileInfo>("DocumentManagerModel.FK__FileInfo__00000000000018FA", "FileInfo", value);
}
}
}
...
}
Теперь пользователь может добавить или удалить элемент в коллекции (FileInfos
) через графический интерфейс. Форма gui имеет кнопку отмены. Как мне можно сбросить все изменения в коллекции?
Вы можете скопировать всю коллекцию FileInfos и сохранить ее начальное состояние. Затем вы можете использовать эту копию, чтобы вернуть изменения и сделать откат, если пользователь нажмет «отменить». – Fabjan