zoukankan      html  css  js  c++  java
  • IIS中部署WCF访问网络盘问题

        最近遇到这样一个问题:

        有一个WCF服务,在服务中需要访问网络映射盘.把WCF服务部署到IIS中不能访问到网络路径。

       

     bool exist = File.Exists(fileName);//fileName为网络路径

    总是出现“访问非法内存....”异常

    但是同样的服务在调式环境下 可以正确访问到。

      最后分析是因为IIS访问网络盘权限不够,然后在IIS中把可能导致该问题的权限全部都加上,结果还是不行。原因是在IIS中配置的权限是用户访问文件目录(虚拟目录或网站)的权限而非IIS访问其他文件目录的权限。

       上述方法不行,进而有了下面的方法:

        Winform或控制台程序可以正常访问网络路径,就产生了把wcf服务寄宿在winform或控制台程序中,这次没让我失望。

       

    代码
    1             _baseUri = new Uri(url);
    2             _servicehost = new ServiceHost( typeof( GetKeyframe ), _baseUri );
    3             _servicehost.AddServiceEndpoint( typeof( IGetKeyframe ), new BasicHttpBinding(), string.Empty );
    4             var behavior = new ServiceMetadataBehavior
    5             {
    6                 HttpGetEnabled = true,
    7                 HttpGetUrl = _baseUri
    8             };
    9             _servicehost.Description.Behaviors.Add(behavior);

        个人拙见,有错误的地方忘高手们指点。。。

        本人不善于文字游戏,初次写,欢迎拍砖。谢谢

        

  • 相关阅读:
    [USACO17JAN]Subsequence Reversal序列反转
    P1330 封锁阳光大学
    P1403 [AHOI2005]约数研究
    poj1456——Supermarket
    P1807 最长路_NOI导刊2010提高(07)
    P1137 旅行计划
    P1162 填涂颜色
    P1040 加分二叉树
    P1135 奇怪的电梯
    P1086 花生采摘
  • 原文地址:https://www.cnblogs.com/Memory/p/1701723.html
Copyright © 2011-2022 走看看