zoukankan      html  css  js  c++  java
  • 【代码保留】WebService发布本地磁盘信息

    今天有人问到如何在服务器A的WebApplication中访问服务器B的磁盘信息(文件Server)。

    方案很多啦:

    FTP协议访问、WebService发布磁盘信息、WCF构建等……

    随手就写了WebService的Demo,蛮放着……

    (未处理的东西多啦,特别是安全性的地方……)

    ///////////////////////code///////////////////////////////////////////////////

    using System.ComponentModel;
    using System.Web.Services;
    using System.IO;
    using System;

    namespace WebServiceFileDirectory
    {
        /// <summary>
        /// Summary description for Service1
        /// </summary>
        [WebService(Namespace = "http://volnet.cnblogs.com/")]
        [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
        [ToolboxItem(false)]
        // To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.
        // [System.Web.Script.Services.ScriptService]
        public class ServiceFileDirectory : System.Web.Services.WebService
        {
            private static readonly string path = System.Configuration.ConfigurationManager.AppSettings["directory"];

            [WebMethod]
            public string[] GetDirectories()
            {
                if (MakeSurePath() == true)
                {
                    return Directory.GetDirectories(path);
                }
                return null;
            }

            [WebMethod]
            public string[] GetFiles()
            {
                if (MakeSurePath() == true)
                {
                    return Directory.GetFiles(path);
                }
                return null;
            }

            private bool? isCorrectPath = null;
            /// <summary>
            /// 确保路径正确
            /// </summary>
            /// <returns></returns>
            private bool? MakeSurePath()
            {
                try
                {
                    if (isCorrectPath.HasValue == false)
                    {
                        if (!Directory.Exists(path))
                        {
                            Directory.CreateDirectory(path);
                        }
                        isCorrectPath = true;
                    }
                }
                catch
                {
                    isCorrectPath = false;
                }
                finally
                {
                }
                return isCorrectPath;
            }
        }
    }

    //Tester:

    protected void btnGetFiles_Click(object sender, EventArgs e)
    {
        FileSystem.ServiceFileDirectory sf = new WebApplicationTester.FileSystem.ServiceFileDirectory();
        string[] files = sf.GetFiles();
        string result= string.Empty;
        foreach (string str in files)
        {
            result += str + "<BR>";
        }
        this.Response.Write(result);
    }

  • 相关阅读:
    2019-2020-1 20199329《Linux内核原理与分析》第十二周作业
    2019-2020-1 20199329《Linux内核原理与分析》第十一周作业
    2019-2020-1 20199329《Linux内核原理与分析》第九周作业
    2019-2020-1 20199329《Linux内核原理与分析》第八周作业
    PHP基础学习笔记5
    MYSQL内置函数【转】
    PHP基础学习笔记3
    常用端口大全【转】
    NMAP输出结果中CPE的含义【转】
    探测主机信息
  • 原文地址:https://www.cnblogs.com/volnet/p/974786.html
Copyright © 2011-2022 走看看