我正在尝试使用核心服务发布组件,为此,我只是创建了一个控制台应用程序,并从服务器执行。我收到以下错误消息。
未处理的异常:System.IO.FileNotFoundException:无法加载文件或程序集'Tridion.ContentManager.CoreService.Client,Version = 6.1.0.996,Culture = neutral,PublicKeyToken = ddfc895746e5ee6b'或其依赖项之一。系统找不到指定的文件。
以下是我的代码,任何人都可以遇到这个问题吗?
static void Main(string[] args)
{
try
{
string compid = "tcm:56-935";
var client = new SessionAwareCoreServiceClient();
var readoption = new ReadOptions();
var component = (ComponentData)client.Read(compid, readoption);
var ItemToPublish = new List<string>();
ItemToPublish.Add(component.Id);
var instruction = new PublishInstructionData();
var pubtarget = (PublicationTargetData)client.Read(
"tcm:0-21-65537", readoption);
List<string> target = new List<string>();
target.Add(pubtarget.Id);
client.Publish(ItemToPublish.ToArray(), instruction, target.ToArray(),
PublishPriority.Normal, readoption);
Console.WriteLine("component published");
Console.WriteLine(component.Title);
Console.WriteLine(pubtarget.Title);
Console.ReadLine();
}
catch (Exception e)
{
Console.WriteLine(e.Message);
Console.ReadLine();
}
}
答案 0 :(得分:4)
错误很明显,它表示你没有依赖。您必须将Tridion.ContentManager.CoreService.Client.dll放入可执行文件所在的同一目录中(或者,您可以放在GAC中)。通常,Visual Studio中的项目“Copy Local”上的引用程序集中有一个选项,您可以尝试将其设置为true并尝试再次执行代码。
答案 1 :(得分:3)
看起来(基于你对Igor的回答的评论)你错过了一些配置。在Tridion Practice网站上查看Frank的wiki帖子 - https://code.google.com/p/tridion-practice/wiki/GetCoreServiceClientWithoutConfigFile