【问题标题】:Kendo UI Grid - Inline Edit not change to databaseKendo UI Grid - 内联编辑不更改为数据库
【发布时间】:2012-11-10 01:48:35
【问题描述】:

我正在关注演示网格编辑内联 它可以工作但不会更改为数据库,它只会更改填充的列表 我接下来要做什么

这里是代码

public static IList<Book> All()
    {
        IList<Book> result = (IList<Book>)HttpContext.Current.Session["Books"];

        if (result == null)
        {
            HttpContext.Current.Session["Books"] = result =
                (from book in new LibraryModel().Books
                 select new Book
                 {
                     PKiBookID=book.PKiBookID,
                     SBookName = book.SBookName,
                     SBookWriter= book.SBookWriter,
                     SDescription=book.SDescription,
                     BStatus=book.BStatus,
                     FKiBookType=book.FKiBookType

                 }).ToList();
        }

        return result;
    }
    public static Book One(Func<Book, bool> predicate)
    {
        return All().Where(predicate).FirstOrDefault();
    }
    public static void Insert(Book book)
    {
        //book.PKiBookID = All().OrderByDescending(p => p.PKiBookID).First().PKiBookID + 1;
        All().Insert(0,book);
    }
    public static void Update(Book book)
    {
        Book target = One(p => p.PKiBookID == book.PKiBookID);
        if (target != null)
        {
            target.SBookName = book.SBookName;
            target.SBookWriter = book.SBookWriter;
            target.SDescription = book.SDescription;
            target.BStatus = book.BStatus;
            target.BookType = new LibraryModel().BookTypes.Single(s => s.PKiBookTypeID == book.FKiBookType);
        }
    }

【问题讨论】:

  • 我使用 firebug 并发现错误是 A circular reference was detected while serializing an object of type 'LibraryProject.Book' 任何关于序列化的建议都会有所帮助。课本是用openaccess orm(数据库优先)和asp.net MVC4生成的。之后,它仍然插入数据库,但我必须重建整个解决方案

标签: asp.net-mvc razor kendo-ui


【解决方案1】:

这个例外是quite well known,有很多帖子如何避免它。 Documentation 中也有介绍。

【讨论】:

  • 我在插入带有引用键的记录后出现此错误,第一次加载完成,我现在可以做什么
  • 我使用一个函数为网格中的下拉列表绑定数据以选择父类别private void populateBook() { ViewData["BookType"] = new LibraryModel().BookTypes .Select(e =&gt; new BookTypeViewModel { PKiBookTypeID = e.PKiBookTypeID, sBookTypeName = e.SBookTypeName }); }我在索引之前调用此函数public ActionResult Index() { populateBook(); return View(); }
猜你喜欢
  • 1970-01-01
  • 2012-12-04
  • 1970-01-01
  • 2020-09-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-01-01
  • 1970-01-01
相关资源
最近更新 更多