しばらく前に、VB.net で XML を作成するために使用したモジュールを作成しました。今回、これほど簡単にできるのは VB.net だけでした。
Dim completeXML = <?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
<?xml-stylesheet href="inventaire.xsl" type="text/xsl"?><HF_DOCUMENT>
<%= From P As GestionInventaire.DAL.vInventaire In produits
Select
<REQ_Inventaire_Produit_Exporte>
<NumClient><%= P.T_Ref_Produit.T_Ref_Client.Seq.ToString() %></NumClient>
<Societe><%= P.T_Ref_Produit.T_Ref_Client.Nom %></Societe>
<CodeProduit><%= P.CodeProdut %></CodeProduit>
<DescriptionProduit><%= P.Desription %></DescriptionProduit>
<DimensionProduit><%= P.Dimensions %></DimensionProduit>
<QteMini><%= P.T_Ref_Produit.QteMinimumB.ToString() %></QteMini>
<QteMax><%= P.T_Ref_Produit.QteMaximumB.ToString() %></QteMax>
<PrixUnitaire><%= P.T_Ref_Produit.PrixUnitaire.ToString("0.00").Replace(",", ".") %></PrixUnitaire>
<NbPaquets><%= P.NbPaquet.ToString() %></NbPaquets>
<PceCount><%= P.T_Ref_Produit.QtePaquet.ToString("0.00").Replace(",", ".") %></PceCount>
<Emplacement><%= P.Emplacement %></Emplacement>
<Location><%= P.SiteParent %></Location>
<QteMiniHiver><%= P.T_Ref_Produit.QteMinimumA.ToString() %></QteMiniHiver>
<QteMaxHiver><%= P.T_Ref_Produit.QteMaximumA.ToString %></QteMaxHiver>
<AncienCode><%= P.T_Ref_Produit.AncienCode %></AncienCode>
</REQ_Inventaire_Produit_Exporte>
%>
</HF_DOCUMENT>
ご覧のとおり<% %>
、Razor で XML を作成するのと同じように、XML タグを で入力するだけです。
VB.net が .Net Core で利用できなくなったことを考えると、C# に相当するものはありますか?
オブジェクトを使用してオブジェクトをループしても同じ結果が得られることはわかっていXDocument
ますが、この方法は実装が非常に速く、読みやすく、とても気に入っています。