2017-08-05 20 views
0

私はCodefluentエンティティを使用してアプリケーションのスキーマを定義し、SQLデータベース、クラスライブラリ、Webページ、およびwinformsを生成するプロジェクトに取り組んでいます。また、Altova XmlSpy製品も使用されています。Codefluent CFPファイルからXSDスキーマファイルを作成する方法は?

私は、CodefluentモデルからCodeFluentモデルのXSDスキーマ表現をどのように抽出して、AltovaのXmlStyleVisionで使用できるかを理解しようとしています。

Softfluentのドキュメントhttps://www.softfluent.com/documentation/CF_Tools_Builder.htmlには、コンパイルオプション "/ ExtractSchema"がありますが、5000行の属性と列挙が作成され、データモデルには何も含まれていません。

ご意見やご提案をいただければ幸いです。

答えて

0

/ExtractSchemaは、CodeFluentエンティティモデルを作成するためのxsdを抽出します。たとえば、Visual Studioで自動補完を取得することができます。このスキーマはあなたのモデルに関連しておらず、あなたが望むものではありません。

モデルのスキーマを生成する最も簡単な方法は、テンプレートを作成してモデルにテンプレートプロデューサを追加することです。まず、フォルダを作成し、[Template]schema.xsdという名前のファイルを追加します(接頭辞は[Template]でなければなりません)。私はAltovaのXmlStyleVisionが何を必要としているか分かりませんが、次のテンプレートは良いスタートになるはずです。最後に

[%@ namespace name="CodeFluent.Model"%] 
[%@ namespace name="CodeFluent.Model.Persistence"%] 
<?xml version="1.0" encoding="UTF-8"?> 
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> 
[%foreach (Entity e in Producer.Project.Entities) 
{%] 
    <xs:element name="[%= e.Name %]"> 
     <xs:complexType> 
      <xs:sequence> 
      [%foreach (Property p in e.Properties) { %]  
       <xs:element name="[%= p.Name %]" type="xs:string" /> 
      [% } %]      
      </xs:sequence> 
     </xs:complexType> 
    </xs:element> 
[% } %] 
</xs:schema> 

、お使いのモデルにテンプレートプロデューサーを追加します。今すぐhttps://www.softfluent.com/documentation/TemplateProducers_TemplateProducer.html

をあなたがモデルを構築する場合、XSDファイルが生成されます。

関連する問題