代码之家  ›  专栏  ›  技术社区  ›  Jonathan Gilbert

动态端口号上带有HTTP的WCF

  •  0
  • Jonathan Gilbert  · 技术社区  · 3 年前

    我需要对WCF绑定的配置进行自动测试。我编写了一个测试,在它的设置中,选择一个随机端口号,并使用 WSHttpBinding .测试运行 ServiceHost 在执行期间,然后将其关闭。这是可行的,但当构建代理尝试运行测试时,我会出现以下错误:

    System.Exception: Unable to set up service host ---> System.ServiceModel.AddressAccessDeniedException: HTTP could not register URL http://+:52361/Test/. Your process does not have access rights to this namespace (see http://go.microsoft.com/fwlink/?LinkId=70353 for details). ---> System.Net.HttpListenerException: Access is denied

    有办法解决这个问题吗?这个“urlacl”机制可以被禁用吗??

    更新:事实证明,这是一场白费力气的追逐。这 不是吗 生成代理上发生的错误。我收集信息时搞砸了。事实证明,构建代理运行的是提升版,没有运行到 urlacl 问题我遇到的实际问题是,NuGet引用不知何故没有将其相应的程序集引用添加到。csproj文件。我不知道测试是如何在本地进行的!

    0 回复  |  直到 3 年前
        1
  •  0
  •   Lan Huang    3 年前

    错误是“进程没有访问此命名空间的权限”。
    你可以尝试以下方法。

    • 制作 Test 平民的
    • 以管理员身份运行服务
    • 以管理员身份运行命令提示符,将URL添加到ACL netsh http add urlacl url=

    https://www.codeproject.com/Questions/441371/When-Hosting-the-WCF-service-i-got-exception

    WCF ServiceHost access rights