PDA程序读取xml文件的想法

这是我第一次接触PDA.

这个系统是用来时时查看各个用水大户用水情况的

这是我们头一个开发的

当时我还没有到这里.

由于在设置连接网站的时候用得是一个固定死的法子

就是真接连接网络中的IP地址(200.200.200.200)

由于我们这边网站的IP地址改了(201,200,200,200)

PDA就不能显示数据了

我看了代码之后,就对我们头说:"我说能不能把这个IP地址放到config里头呢?,这样的话,下会如何IP地址改了,只要修改一下config文件就行了."

头说样行,那你看头改吧.

可是当我打开添加新项时发现里没有添加配制文件这一项

我就对头说:"在那里没有配制文件,添加不了呢?.";

头说config是xml文件,那你就读取xml文件也是一样的呀.

也是的哟.

于是我添加了一个DSD.xml文件,可是新的问题又来了

路径,路径怎么取到呀.

在这里用Server.mapPath("")这个不行,当然了这个在asp.net里用得多吗,

用Application.StartupPath这个也没有,找不着呀

去问头,头说这个我也不知道,你看头办,看怎么能弄出来

这是我提出来的法子,总不能到了中途就退索了吧.

从网上找、索,发现在用这个可以

            string path = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetModules()[0].FullyQualifiedName);

真是太好了

System.Reflection.Assembly.GetExecutingAssembly().GetModules()[0].FullyQualifiedName ;

这个是找着当前执行程序的完整路径

而前面那个是得到这个执行程序所在的目录

这下可高兴死了

由于这是第一次到PDA

就连PDA的怎么使也不太会。

我以为是在我的程序当中添加一个DSD.xml放到bin里的debug目录一部署就成事OK了呢

没有这么好的事,这个部署是把执行程序放到PDA当中的 /Program Files/ppcmonitor/这里去了

可是在这里 /Program Files/ppcmonitor/ 并没有DSD.xml文件

得手工把项目当中的DSD.xml文件copy到 /Program Files/ppcmonitor/ 就OK了。

这样才算是真真的完成了呢。

这样在DSD.xml就可以修改IP地址,或修改域名了。每次启动得时候都是从DSD.xml文件里读取得,这样如果以后发现在改变了,就不用再去动程序了,只需修改DSD.xml就行了。

下面是我的读取DSD.xml文件的代码
        private void connectMenuItem_Click(object sender, EventArgs e)
        
{
            
///
            
/// 得到执行程序的目录
            
///

            string path = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetModules()[0].FullyQualifiedName);
            XmlDocument xmlDoc 
= new XmlDocument();
            xmlDoc.Load(path 
+ @"DSD.xml");
            
string dsdIPAddress = xmlDoc.GetElementsByTagName("DSD")[0].InnerText;
            ShowRemoteWaterDate(dsdIPAddress);
        }


        
liaohaibing add
下面是我的DSD.xml里的代码
<?xml version="1.0" encoding="utf-8" ?>
<DSD>dsd.xxxx.com</DSD>    

我知道我对读取出来的什进行判断不太好
时间紧还找不着好的法子。
原文地址:https://www.cnblogs.com/xiaotuni/p/2365774.html