• WCF和WPF读取xml的路径问题


    使用WCF编写服务,涉及到xml的读取,使用了System.AppDomain.CurrentDomain.BaseDirectory来获取路径,获得的是项目的基目录

    例如:

    string path = System.IO.Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, @"Data.xml");

    xml文件:

    <?xml version="1.0" encoding="utf-8" ?>
    <Users>
    <User>
    <UserName>Sky300</UserName>
    <Password>123</Password>
    <Age>25</Age>
    </User>
    <User>
    <UserName>QYB</UserName>
    <Password>123</Password>
    <Age>25</Age>
    </User>
    <User>
    <UserName>ZJ</UserName>
    <Password>123</Password>
    <Age>25</Age>
    </User>
    </Users>

    WCF的服务的实现:

    public List<UserInfo> GetData()
    {
    List<UserInfo> list = new List<UserInfo>();
    string path = System.IO.Path.Combine(Environment.CurrentDirectory, @"Data.xml");
    string path1 = System.IO.Path.Combine(System.AppDomain.CurrentDomain.BaseDirectory, @"Data.xml");
    XDocument xmldoc=XDocument.Load(path1);
    var users = xmldoc.Descendants("User");
    foreach (var item in users)
    {
    UserInfo info = new UserInfo();
    info.UserName = item.Element("UserName").Value;
    info.Password = item.Element("Password").Value;
    info.Age =Convert.ToInt32(item.Element("Age").Value);
    list.Add(info);
    }
    return list;
    }

    在WPF中涉及到xml的读取,使用了Environment.CurrentDirectory

    例如:

     string path = System.IO.Path.Combine(Environment.CurrentDirectory, @"Data.xml");

    1. Application.StartupPath——获取启动了应用程序的可执行文件的路径,不包括可执行文件的名称。   
    2. Environment.CurrentDirectory——获取和设置当前目录(即该进程从中启动的目录)的完全限定路径,只是“当前”目录,不一定是exe文件所在的目录。在用FileOpenDialog选择一个文件以后这个目录就跟着发生改变了。   
    3. Application.ExecutablePath——获取启动了应用程序的可执行文件的路径,包括可执行文件的名称。

  • 相关阅读:
    float、定位、inline-block、兼容性需注意的特性总结
    meta 标签 详细说明
    兼容探讨一
    javascript性能优化总结二(转载)
    javascript性能优化总结一(转载人家)
    特效合集(原生JS代码)适合初学者
    svg实现简单沙漏旋转
    SVG制作简单的图形
    SVG的简单介绍
    jQuery之效果
  • 原文地址:https://www.cnblogs.com/sky300/p/2558583.html
Copyright © 2020-2023  润新知