Example #1
0
    public static string GetProductTcmId(CoreService2010Client client, string productId)
    {
        string productTcmId = "";
        try
        {
            //get the XML list of component from the folder
            var productsXML = client.GetListXml(ConfigurationManager.AppSettings["ProductFolderTcmId"],
                new OrganizationalItemItemsFilterData { ItemTypes = new[] { ItemType.Component } });

            //loop through each item and find out if it is the product we want
            foreach (var product in productsXML.Elements())
            {
                var productData = client.Read(product.Attribute("ID").Value, null) as ComponentData;
                var schemaFields = client.ReadSchemaFields(productData.Schema.IdRef, false, null);
                var content = XDocument.Parse(productData.Content);
                XNamespace ns = schemaFields.NamespaceUri;

                //check if the product id's match
                if (productId == content.Root.Element(ns + "product_id").Value)
                {
                    //return the TcmId
                    productTcmId = product.Attribute("ID").Value;
                    //exit the foreach
                    break;
                }
            }
        }
        catch (Exception ex)
        {
            Log.Error("Error in GetProductTcmId()", ex);
        }
        return productTcmId;
    }
Example #2
0
    public static string GetProductTcmId(CoreService2010Client client, string productId)
    {
        string productTcmId = "";

        try
        {
            //get the XML list of component from the folder
            var productsXML = client.GetListXml(ConfigurationManager.AppSettings["ProductFolderTcmId"],
                                                new OrganizationalItemItemsFilterData {
                ItemTypes = new[] { ItemType.Component }
            });

            //loop through each item and find out if it is the product we want
            foreach (var product in productsXML.Elements())
            {
                var        productData  = client.Read(product.Attribute("ID").Value, null) as ComponentData;
                var        schemaFields = client.ReadSchemaFields(productData.Schema.IdRef, false, null);
                var        content      = XDocument.Parse(productData.Content);
                XNamespace ns           = schemaFields.NamespaceUri;

                //check if the product id's match
                if (productId == content.Root.Element(ns + "product_id").Value)
                {
                    //return the TcmId
                    productTcmId = product.Attribute("ID").Value;
                    //exit the foreach
                    break;
                }
            }
        }
        catch (Exception ex)
        {
            Log.Error("Error in GetProductTcmId()", ex);
        }
        return(productTcmId);
    }
Example #3
0
        public FolderData getFolderData(string tcmuri)
        {
            FolderData folderData = (FolderData)coreServiceClient.Read(tcmuri, readOptions);

            return(folderData);
        }