2012-04-09 11 views
4

SDL Tridion 2011 SP1のコアサービスを使用してスキーマを作成しています。スキーマの作成では、私はスキーマにカスタム名前空間URIを使用しました。SDL Tridion 2011 SP1のコアサービスを使用したスキーマの作成

Tridion.ContentManager.CoreService.Client.SchemaData schemas = new SchemaData 
{ 
    Title = "coreservicesschema3", 
    Description = "coreservicesschema", 
    Id = "tcm:0-0-0", 
    LocationInfo = new LocationInfo 
    { 
     OrganizationalItem = 
      new LinkToOrganizationalItemData { IdRef = "tcm:7-18-2" } 
    }, 

    RootElementName = "Content", 
    NamespaceUri = "customnamespaceuri", 
    Xsd = xsd.ToString(SaveOptions.None) 
}; 
schemas = (SchemaData)client.Create(schemas, new ReadOptions()); 
Response.Write("<BR>" +"new schema id"+ schemas.Id); 
Response.Write("<BR>" + "new schema Name" + schemas.Title); 
//schema created 

誰でも作成する方法を示すことができます:私たちは直接TridionのCMEを通じてスキーマを作成する際に一般的に、我々は、URIが、私はスキーマを作成するには、このコードを使用しているuuid:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

で始まる自動的に生成された名前空間を取得しますデフォルトの名前空間URIを持つスキーマ

using (var client = new SessionAwareCoreServiceClient(netTcpBinding, remoteAddress)) 
{ 
    SchemaData schemaData = client.GetDefaultData(ItemType.Schema, folderId) as SchemaData; 
    schemaData.Description = "description"; 
    schemaData = client.Save(schemaData, readOptions) as SchemaData; 
    schemaData = client.CheckIn(schemaData.Id, readOptions) as SchemaData; 

    Console.WriteLine("Schema: " + schemaData.LocationInfo.WebDavUrl); 
} 

スキーマは、デフォルトの名前空間を使用して作成されます。

あなたは

答えて

6

あなたはコアサービスとスキーマを作成するために必要な最小限のコードは以下の通りですありがとうございます。この例の場合、フィールドも含まれませんが、それはあなたが求めていたものではありません。

関連する問題