1

我正在尝试使用核心服务发布组件,为此,我刚刚创建了一个控制台应用程序,并从服务器执行。我收到以下错误消息。

未处理的异常: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();
    }
}
4

2 回答 2

4

错误很清楚,它表示您没有适当的依赖关系。您必须将 Tridion.ContentManager.CoreService.Client.dll 放在可执行文件所在的同一目录中(或者,您可以放在 GAC 中)。通常在 Visual Studio 中有一个关于项目“复制本地”的引用程序集的选项,您可以尝试将其设置为 true 并尝试再次执行您的代码。

于 2012-07-09T09:39:11.150 回答
3

看起来(根据您对伊戈尔的回答的评论)您缺少一些配置。在 Tridion Practice 网站上查看 Frank 的 wiki 帖子 - https://code.google.com/p/tridion-practice/wiki/GetCoreServiceClientWithoutConfigFile

于 2012-07-09T10:47:33.887 回答