0

.Netは非常に新しい。<Tracking>XMLファイルに追加するまで、すべてが正常に機能していました。

<Product>
    <id>product1</id>
    <Name>Product 1</Name>
    <Packart>detailimg</Packart>
    <TitleFile>detailtitleoriginal</TitleFile>
    <Description>Description</Description>
    <Ingredients>Ingredients</Ingredients>
    <FeedingInstructions>Instructions</FeedingInstructions>
    <Analysis>Analysis</Analysis>
    <Footer>Footer</Footer>
    **<Tracking>Test</Tracking>**
</Product>

私のXSDファイルはそのようなものです:

<?xml version="1.0" encoding="utf-8" ?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:element name="Products">
        <xs:complexType>
            <xs:sequence>
                <xs:element maxOccurs="unbounded" name="Product">
                    <xs:complexType>
                        <xs:sequence>
                            <xs:element name="id" type="xs:string" />
                            <xs:element name="Name" type="xs:string" />
                            <xs:element name="Packart" type="xs:string" />
                            <xs:element name="TitleFile" type="xs:string" />
                            <xs:element name="Description" type="xs:string" />
                            <xs:element name="Ingredients" type="xs:string" />
                            <xs:element name="FeedingInstructions" type="xs:string" />
                            <xs:element name="Analysis" type="xs:string" />
                            <xs:element name="Footer" type="xs:string" />
                            <xs:element name="Tracking" type="xs:string" /></xs:sequence>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>
</xs:schema>

次に、aspxページに次を追加しました。

<%=row[ "Tracking"]%>

ブラウザでページを表示すると、次のエラーが発生します。

Failed to enable constraints. One or more rows contain values violating non-null, unique, or foreign-key constraints.

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

Exception Details: System.Data.ConstraintException: Failed to enable constraints. One or more rows contain values violating non-null, unique, or foreign-key constraints.

Source Error: 


Line 19:             ds = new System.Data.DataSet();
Line 20:             ds.ReadXmlSchema(MapPath("Content/xml/Products.xsd"));
Line 21:             ds.ReadXml(MapPath("Content/xml/Products.xml"));
Line 22:             Cache.Insert("Products", ds, new System.Web.Caching.CacheDependency(MapPath("Content/xml/Products.xml")),
Line 23:                          DateTime.Now.AddHours(12), System.Web.Caching.Cache.NoSlidingExpiration);

Source File: d:\ProductDetails.aspx.cs    Line: 21 
4

1 に答える 1

1

この問題をすばやく解決する 1 つの方法は、データセットで EnforceConstraints を無効にすることです。

ds.EnforceConstraints = false;
//now you can load the data 

更新:明らかに、これは望ましくない影響を与える可能性があります。これがシナリオに該当するかどうかを判断する必要があります。

于 2012-05-08T20:12:31.417 に答える