public void PublishComponent()
{
string domainName = System.Configuration.ConfigurationSettings.AppSettings["domainName"];
string userName = System.Configuration.ConfigurationSettings.AppSettings["userName"];
string passowrd = System.Configuration.ConfigurationSettings.AppSettings["passowrd"];
timestamp = DateTime.Now.ToString("dd:MM:yy h:mm:ss tt").Replace(":", "_").Replace(" ", "");
string content = string.Empty;
client = CoreServiceClientFactory.GetClient();
string[] pageList = System.IO.File.ReadAllLines(Environment.CurrentDirectory + "\\" + "pagepublish.txt");
//string[] pageList = System.IO.File.ReadAllLines(Environment.CurrentDirectory + "\\" + "publish.txt");
string[] publishTargets = new string[] {"live","preview" };
int i = 1;
int breakValue = 0;
foreach (var tcmid in pageList)
{
string componenttcmid = tcmid;
string[] page = new string[] { tcmid };
Console.Write("Start- " + componenttcmid + " - " + i + " of " + pageList.Count());
Console.WriteLine();
PublishInstructionData publishInstructionData = new PublishInstructionData
{
RenderInstruction = new RenderInstructionData(),
ResolveInstruction = new ResolveInstructionData()
};
if(breakValue == 10)
{
breakValue = 0;
Thread.Sleep(5000);
}
try
{
client.Publish(page, publishInstructionData, publishTargets, PublishPriority.Normal, new ReadOptions());
Console.WriteLine(componenttcmid + "Published");
Console.WriteLine();
}
catch (Exception ex)
{
Log(componenttcmid+ " - " + ex.Message + ex.StackTrace, "publisherror");
Log(componenttcmid, "failedpublish");
//client.Update(ComponentContent, new ReadOptions());
Console.WriteLine("Failed" + componenttcmid);
}
breakValue++;
i++;
}
}
when i triggered publish in tridion core service, but i dont see them appearing in the publish queue/queue_consumers table. In the event log i observed following error:
No Publish Transactions created for (un-)publish action for Publication 'tcm:0-30-1'. Reason: unable to resolve Target Types for purposes: live, preview.
Component: Tridion.ContentManager.Publishing