Visual Studio .NET XML şeması Tasarımcıda çok boyutlu bir XSD şemaları görüntülemeye çalıştığınızda bir hata iletisi

Makale çevirileri Makale çevirileri
Makale numarası: 325695 - Bu makalenin geçerli olduğu ürünleri görün.
Hepsini aç | Hepsini kapa

Belirtiler

Visual Studio. NET'te bir XML Tasarımcısı penceresini açabilir ve çok boyutlu bir XML şema tanımı (XSD) şema çalıştığınızda yerine Schema Designer pencere açabilir ve XML Tasarımcısı veri görünümünü aşağıdaki hata iletisini alabilirsiniz:
Bu XML belgesi iyi biçimlendirilmiş olsa da, bu DataView'ın görüntüleyemiyor yapısını içerir. Aynı tablo (TableName) iki iç içe ilişkiler alt tablosu olamaz

Neden

XSD şeması uzantısı olan bir .xml dosyası olarak kaydedilir. Visual Studio .NET tasarımcıları uzantısı tabanlıdır. Bu nedenle, Visual Studio. NET'te açabilir ve belgeyi açmaya çalıştığınızda bir XML Tasarımcısı penceresi yerine bir şema Tasarımcısı penceresi açılır... .xml uzantısıyla dosyaları XML dosyaları düzenli olarak yorumlanır. Visual Studio. NET'te XML Tasarımcısı, otomatik olarak şemayı bir XML belgesinin anlaması için ADO.NET şema kesmesi kurallarını kullanır. ADO.NET şema kesmesi kuralları değil izin veya Microsoft .NET Framework RTM sürümü çok boyutlu ilişkileri destekler.

Çözüm

Yeniden adlandırmak veya belgeyi açın ve bir Visual Studio .NET XML Schema Designer penceresinde görüntülemek için bir .xsd uzantılı bir dosyaya kaydedin. Visual Studio .NET XML şeması Tasarımcısı doğru biçimde yüklemek ve çok boyutlu bir XSD şemaları görüntüleyebilirsiniz.

Durum

Bu davranış tasarım yüzündendir.

Daha fazla bilgi

Hata iletisi yeniden oluşturun ve çözünürlüğünü sınamak için aşağıdaki adımları izleyin:
  1. In Notepad, paste the following code in a new file:
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
    	<xs:element name="OrdersInventoryData" type="OrdersInventoryDataType" />
    	<xs:complexType name="ItemType">
    		<xs:sequence>
    			<xs:element name="id" type="xs:string" />
    			<xs:element name="qty" type="xs:integer" />
    		</xs:sequence>
    	</xs:complexType>
    	<xs:complexType name="OrderType">
    		<xs:sequence>
    			<xs:element name="OrderId" type="xs:string" />
    			<xs:element name="CustomerId" type="xs:string" />
    			<xs:element name="Item" type="ItemType" maxOccurs="unbounded" />
    		</xs:sequence>
    	</xs:complexType>
    	<xs:complexType name="InventoryType">
    		<xs:sequence>
    			<xs:element name="Item" type="ItemType" maxOccurs="unbounded" />
    		</xs:sequence>
    	</xs:complexType>
    	<xs:complexType name="OrdersInventoryDataType">
    		<xs:sequence>
    			<xs:element name="Order" type="OrderType" maxOccurs="unbounded" />
    			<xs:element name="Inventory" type="InventoryType" maxOccurs="unbounded"/>
    		</xs:sequence>
    	</xs:complexType>
    </xs:schema>
    					
  2. Dosyayı OrderInventory.xml sabit diskinize kaydedin. Örnek şeması çok boyutlu çünkü Sipariş hem de StokOrdersInventoryData öğesinin alt öğeleri maddesi (iki ana-alt ilişkisi içinde bir alt öğesi öğedir) ItemType complexType ','adlı bir alt öğesi gerekir.
  3. Visual Studio. NET'te, yeni veya varolan Microsoft Visual Basic .NET veya Microsoft Visual C# .NET projesi, bir Windows uygulaması projesi ya da konsol uygulaması bir proje açın.
  4. Yeni oluşturduğunuz OrderInventory.xml XML belgesini projeye ekleyin.
  5. Solution Explorer'da OrderInventory.xml açmak için çift tıklatın. Bir XML belgesinin içeriğini görünüm, bir XML Tasarımcısı penceresinde görüntülenir.
  6. XML tasarımcısı</a0> penceresinde <a1>veri</a1> görünümüne geçin. Aşağıdaki hata iletisini alıyorsunuz:
    Bu XML belgesi iyi biçimlendirilmiş olsa da, bu DataView'ın görüntüleyemiyor yapısını içerir. (Madde) aynı tabloda iki iç içe ilişkiler alt tablosu olamaz
    .Xml dosya adı uzantısı yerine bir şema Tasarımcı pencere açılmak üzere bir XML Tasarımcısı penceresini neden olur. Dosyanın içeriğini bu nedenle bir XSD şeması olarak yerine normal XML olarak kabul edilir. XML verileri görüntülemek için bir Visual Studio .NET XML Tasarımcısı penceresi açıldığında, şema yapısını XML belgesinin ADO.NET şema kesmesi kuralları uygulanır. ADO.NET şema kesmesi açısından, complexType bir XML öğesi, bağımsız bir tablo olarak algılanan ve bir tablo, bir üst öğe-alt öğe ilişkilerinin iki veya daha fazla alt tablosu olamaz. Örnek şemada ItemType complexType <a1>Madde</a1> öğesi alt sıra (OrderType complexType) ve Stok (InventoryType complexType) öğeleri olarak tanımlandı. Bu olmayan izin verilen veya Microsoft .NET Framework RTM sürümü ADO.NET şema kesmesi kuralları tarafından desteklenen.
  7. XML Tasarımcısı penceresini kapatın.
  8. Solution Explorer'da OrderInventory.xsd için OrderInventory.xml) yeniden adlandırın. Bunu yapmak için <a0></a0>, dosyayı sağ tıklatın ve sonra da <a2>Yeniden Adlandır</a2>'ı tıklatın.
  9. Solution Explorer'da OrderInventory.xsd açmak için çift tıklatın. Bir XML belgesinin içeriğini görünüm, bir XML şeması Designer penceresinde görüntülenir. Schema görünüme geçin ve şema yapılarını düzgün şekilde görüntülenir dikkat edin.

Referanslar

Xsd.exe yardımcı programı veya Visual Studio .NET ile XML dosyaları kullandığınızda, "(TableName) aynı tabloyu iki iç içe ilişkiler alt tablosu olamaz" hata iletisi alabilirsiniz. Daha fazla bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
325696Visual Studio .NET XML Tasarımcısı'nda çok boyutlu XML verilerini görüntülemeye çalıştığınızda bir hata iletisi alıyorsunuz

Özellikler

Makale numarası: 325695 - Last Review: 14 Haziran 2006 Çarşamba - Gözden geçirme: 3.4
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft Visual Studio 2005 Standard Edition
  • Microsoft Visual Studio 2005 Professional
  • Microsoft Visual Studio 2005 Express Edition
  • Microsoft Visual Studio .NET 2003 Professional Edition
  • Microsoft Visual Studio .NET 2003 Enterprise Developer
  • Microsoft Visual Studio .NET 2003 Enterprise Architect
  • Microsoft Visual Studio .NET 2002 Professional Edition
  • Microsoft Visual Studio .NET 2002 Enterprise Developer
  • Microsoft Visual Studio .NET 2002 Enterprise Architect
Anahtar Kelimeler: 
kbmt kbprb KB325695 KbMttr
Machine-translated Article
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:325695

Geri Bildirim Ver

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com