2014-04-07 12 views
5

(Sürüm 2.0.5) eleman isimleri şemada isimleri eşleşmiyor isim. Benim XML dosyaları ÖrneğinF #, XML tipi sağlayıcı değişiklikleri FSharp.Data XML tipi sağlayıcısı kullanma

başlar:

<?xml version="1.0" encoding="utf-8"?> 
<WebQuery><Results><Result><PrimaryID>105882365</PrimaryID><CONTACT_ADDRESS_LINE_1 /><CONTACT_ADDRESS_LINE_2 /> 

ancak F # ben anlamıyorum tip sağlayıcıları hakkında bir şey var mı

.ContactAddressLine1 

ile CONTACT_ADDRESS_LINE_1 başvurmak gerekir? F # adı niçin şemadaki eleman isminden farklıdır?

+0

'CONTACT_ADDRESS_LINE_1' böylece diğer unsurlar izleyin biçimi dikkate sarsıcı görünüyor CONTACT_ADDRESS_LINE_1 elemanı erişen olacak ContactAddressLine1 kullanarak, işlevsellik sıfır etkiye sahiptir . – ChaosPandion

+0

ChaosPandoin - Belki bu yüzden, ben şemayı kontrol etmiyoruz ama, bu bir dış firma tarafından sağlanmaktadır budur. – JonnyBoats

+0

Ben XML tipi sağlayıcısına bazı okuma yukarı yapmanız gerekecek. Elimde olmadan orijinal formunu temsil elemanı iç meta tutmak olup olmadığını merak olamaz. Adları daha fazla .NET sözleşmesine göre biçimlendirmek mümkün görünüyor. – ChaosPandion

cevap

3

F # Veri özellik adları okunabilmesi için PascalCased yapar, ama bu yine de

+0

XML öğesi (ve öznitelik) adlarının büyük/küçük harfe duyarlı olması nedeniyle bu durum işlevselliği etkiliyor, dolayısıyla “konum” ve “Konum” farklı öğelere atıfta bulunuyor ve hem aynı şemada bulunması mümkün olabiliyordu. Bu durumda bir özellik olarak – JonnyBoats

+0

Konum ve diğer Location2 denilen olacaktır. Üzülmeyin, gerçek niteliği ve eleman isimleri oluşturulan özelliklerini eşleşmesi gerekmez. İsterseniz, oluşturulan yürütülebilir dosyayı, –

+2

Gustavo ismini kullandığını görmek için derlemeyi kaldırabilirsiniz - Cevabınızı, tasarımın bu olduğunu kabul ediyorum. Tasarımı sevmiyorum ama bu tartışmanın yeri değil. Teşekkür ederim. – JonnyBoats