代码之家  ›  专栏  ›  技术社区  ›  Vaccano

获取Linq to SQL以保存到数据库

  •  1
  • Vaccano  · 技术社区  · 14 年前

    所以我有以下代码:

    // Get the current user
    _currentUser = WindowsIdentity.GetCurrent();
    
    // Get the list of address for the current user
    _dataMap = new DataMapDataContext();
    _addresses = _dataMap.Addresses
             .Where(address => address.InsertUserName == _currentUser.Name).ToList();
    

    _addresses.Add(form.Item);
    _dataMap.SubmitChanges();
    

    当我调用SubmitChanges时,数据库中不会保存任何内容。为什么?我没抓住重点吗?我认为使用linqtosql,您只需将项添加到查询结果中,然后调用SubmitChanges,就可以了。。。。很明显我遗漏了什么。

    如果你用“ToList”现在能用了吗?如果没有,那你怎么把东西插入收藏?(我不认为Add是IQueryable的一部分。)

    1 回复  |  直到 14 年前
        1
  •  6
  •   RPM1984    14 年前

    不要使用 _addresses.Add

    试试这个:

        _dataMap.Addresses.InsertOnSubmit(form.Item);
        _dataMap.SubmitChanges();
    

    当然,我看不出什么 表单项目 实体集。

    使用LINQ-SQL(除非您使用某种POCO映射),您不能将项添加到集合/查询中,您需要将项直接添加到指定数据上下文的实体集中。

    .插入提交 你想多少次都行,而且 .提交更改

    更多信息 here .