gpt4 book ai didi

ektron - Ektron 中的 Wcf 服务

转载 作者:行者123 更新时间:2023-12-02 06:56:18 24 4
gpt4 key购买 nike

我正在 Ektron 中使用 WCF 服务(rrot/工作区/服务)。当我尝试使用以下代码在客户端中使用 ContentService.svc 服务时,

   ContentManagerClient cClient = new ContentManagerClient();
UpdatedContentService.ContentData data = new UpdatedContentService.ContentData();
data.m_strTitle = "test";
data.m_strHtml = "test";
data.m_intFolderId = 72;
data.m_intUserId = 1;
cClient.Add(data);

我收到以下错误“当前用户无权执行此请求”。我如何验证 ektron 用户的身份以从客户端执行此操作?

最佳答案

您在 ektron 开发论坛上收到的答案很好。 (有同样问题的人的事先讨论:http://developer.ektron.com/forums/?v=t&t=1280)

您将需要使用身份验证服务,而不是内容服务。这可以通过以下步骤完成:

  1. 为 Web 服务创建代理对象:针对您的 Web 服务地址运行 .Net 工具 wsdl.exe,例如http://localhost:/Workarea/webservices/AuthService.asmx
  2. 通过运行“csc/t:library AuthenticationService.cs”编译成 DLL:添加 DLL 作为对 DLL 或控制台应用程序的引用将 DLL 复制到项目中的 Lib 文件夹
  3. 添加 DLL 作为对 DLL 或控制台应用程序的引用将 DLL 复制到项目中的 Lib 文件夹中右键单击“添加引用”并浏览到您创建的代理 DLL。添加 System.Web.Services 作为对 DLL 或控制台应用程序的引用
  4. 从您的应用调用代理代码:

    AuthenticationService auth = new AuthenticationService();
    IAsyncResult 响应 = auth.BeginisValidUser(用户名、密码等...);

可以在以下位置找到此工作代码示例: http://developer.ektron.com/Templates/CodeLibraryDetail.aspx?id=1036&blogid=116

此示例改编自拉入内容服务的 VooDoo 工程示例: http://ektroneering.blogspot.com/2011/01/accessing-ektron-from-dll-or-console.html

关于ektron - Ektron 中的 Wcf 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17485583/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com