0

这是相关的代码:

var pageToEdit = _context.WikiPages.Find(i_PageToCreate.PageID);
pageRevisionToAdd = new WikiPageRevision();
pageRevisionToAdd.Content = i_PageToCreate.Content;
pageRevisionToAdd.CreationDate = DateTime.Now;
pageRevisionToAdd.ParentWikiPageID = pageToEdit.ID;
pageRevisionToAdd.CreatorID = -1;

foreach (var rev in pageToEdit.Revisions)
{
     rev.RevisionState = WikiPageRevision.eRevisionState.History;
}
pageRevisionToAdd.RevisionState = WikiPageRevision.eRevisionState.Baseline;
pageToEdit.Revisions.Add(pageRevisionToAdd);
    
_context.SaveChanges();

当它到达_context.SaveChanges();我得到错误:

属性“RevisionID”是对象关键信息的一部分,不能修改。

异常详细信息:System.InvalidOperationException:属性“RevisionID”是对象关键信息的一部分,无法修改。

我没有触摸修订 ID .. 我做错了什么?

4

1 回答 1

0

发现错误...这是一个定义为使用枚举封装 RvisionStateID 的属性。

    public eRevisionState RevisionState 
    {
        get { return (eRevisionState)RevisionID; } // ..should be RevisionStateID
        set { RevisionID = (int)value; } // ..should be RevisionStateID
    }
于 2013-07-04T08:06:08.820 回答