Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linq to sql LinQ到SQL数据插入问题_Linq To Sql - Fatal编程技术网

Linq to sql LinQ到SQL数据插入问题

Linq to sql LinQ到SQL数据插入问题,linq-to-sql,Linq To Sql,我有两个表结算和违规。结算是结算表中的主键,违规是外键 在我的dbml文件中,我拖放了两个表,并设置了关联 在我的VB.net代码中,当我尝试将记录插入到db中时,它没有提供将值违规集合添加到结算中的选项 我正在尝试读取一个有冲突的xml文件,并将其插入SQL。但只有结算表插入了记录 我无法将v添加到结算s,因为它未列出 请帮忙 Dim Orders As XDocument = XDocument.Load("c:/inetpub/violations.xml") Dim _Orde

我有两个表结算和违规。结算是结算表中的主键,违规是外键

在我的dbml文件中,我拖放了两个表,并设置了关联

在我的VB.net代码中,当我尝试将记录插入到db中时,它没有提供将值违规集合添加到结算中的选项

我正在尝试读取一个有冲突的xml文件,并将其插入SQL。但只有结算表插入了记录

我无法将v添加到结算s,因为它未列出

请帮忙

Dim Orders As XDocument = XDocument.Load("c:/inetpub/violations.xml")

    Dim _Orderss = violations.<Collections>.<Settlement>

    For Each _settlement In _settlements
        Dim s As New Settlement

        s.CamisID = _settlement.<CamisID>.Value 
        s.DocketID = _settlement.<DocketID>.Value
        s.RespFName = _settlement.<RespFName>.Value
        s.RespMName = _settlement.<RespMName>.Value
        s.RespLName = _settlement.<RespLName>.Value
        s.DispDate = Date.Parse(_settlement.<DispDate>.Value)

        Dim _violations = _settlement.<ViolationList>.<Violation>

        For Each _violation In _violations
            Dim _v As New Violation

            _v.DocketID = _settlement.<DocketID>.Value
            _v.ViolationInfo = _violation.<ViolationInfo>.Value
            _v.violationCD = _violation.<ViolationCd>.Value
            _v.Severity = Integer.Parse(_violation.<Severity>.Value)
            _v.Point = Integer.Parse(_violation.<Point>.Value)
            _v.Occurence = Integer.Parse(_violation.<Occurence>.Value)


        Next
        _db.Settlements.InsertOnSubmit(s)
        _db.SubmitChanges()
    Next

您需要设置每个子级的parent属性,而不是将子级添加到父级

您是否可以尝试设置每个_v的Settelment属性,而不是将冲突添加到解决方案中

For Each _settlement In _settlements
    Dim s As New Settlement

    s.CamisID = _settlement.<CamisID>.Value 
    s.DocketID = _settlement.<DocketID>.Value
    s.RespFName = _settlement.<RespFName>.Value
    s.RespMName = _settlement.<RespMName>.Value
    s.RespLName = _settlement.<RespLName>.Value
    s.DispDate = Date.Parse(_settlement.<DispDate>.Value)



    Dim _violations = _settlement.<ViolationList>.<Violation>

    For Each _violation In _violations
        Dim _v As New Violation

        _v.DocketID = _settlement.<DocketID>.Value
        _v.ViolationInfo = _violation.<ViolationInfo>.Value
        _v.violationCD = _violation.<ViolationCd>.Value
        _v.Severity = Integer.Parse(_violation.<Severity>.Value)
        _v.Point = Integer.Parse(_violation.<Point>.Value)
        _v.Occurence = Integer.Parse(_violation.<Occurence>.Value)
        _v.Settelment = s
        _db.Violations.InsertOnSubmit(_v)
    Next

    _db.Settlements.InsertOnSubmit(s)
    _db.SubmitChanges()

Next