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);

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

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

        

  • 相关阅读:
    python2.7之打飞机(文末附素材链接)
    python画小猪佩奇
    什么叫递归
    DIV居中的几种方法
    什么是控制反转
    上传图片及时预览
    MVC与三层的区别
    From表单提交刷新页面?
    文件上传之form表单篇
    文件上传之伪Ajax篇
  • 原文地址:https://www.cnblogs.com/Memory/p/1701723.html
Copyright © 2011-2022 走看看