这几天到了项目小结测试的时候,需要发布到服务器上测试接口,因此silverlight的发布动作相对比较频繁,由于一些公共的WCF服务和数据库都在公司的数据库服务器上,项目中的服务引用配置文件ServiceReferences.ClIEntConfig需要经常改动,主要改的是IP地址,当然还有web.config和WCF服务的终结点配置等等,比较难改的是ServiceReferences.ClIEntConfig,因为这个配置文件是生成到RIA.xap包中的,想修改其中的配置要么在生成前修改,要么在生成后修改RIA.xap为RIA.zip然后解压后修改再压缩,这样修改起来很费时间,于是就写了一个小工具来自动完成这个 *** 作。
写个工具自动修改RIA.xap中的服务引用配置主要利用一个zip类解压在压缩实现。
主体代码:
string filename = this.textBox1.Text;
if (filename.Contains("RIA.xap")&&this.txtFrom.Text!=""&&this.txtTo.Text!="")
{
string oldString = this.txtFrom.Text;
string newString = this.txtTo.Text;
string configfilename = "ServiceReferences.ClIEntConfig";
System.IO.file.Move(filename,filename.Replace("RIA.xap","RIA.zip"));
filename = filename.Replace("RIA.xap","RIA.zip");
Zip.UnZipfiles(filename,filename.Replace("RIA.zip","result/"));
System.IO.file.Delete(filename);
filename = filename.Replace("RIA.zip","result");
string strAll = System.IO.file.ReadAllText(filename+"/"+configfilename);
System.IO.file.Delete(filename + "/" + configfilename);
strAll = strAll.Replace(oldString,newString);
System.IO.file.WriteallText(filename + "/" + configfilename,strAll);
Zip.Zipfiles(filename.Replace("result","RIA.zip"),filename);
System.IO.Directory.Delete(filename);
System.IO.file.Move(filename.Replace("result",filename.Replace("result","RIA.xap"));
MessageBox.Show("替?换?完ê成é!?");
}
else
{
MessageBox.Show("请?选?择?RIA.xap文?件t并¢填?写′需è要a替?换?的?字?符?串?再ù进?行D *** ù作÷!?");
}
源代码及可执行文件
源代码:http://files.cnblogs.com/wengyuli/RIAZipHelper.rar
可执行文件:http://files.cnblogs.com/wengyuli/Debug.rar
总结以上是内存溢出为你收集整理的Silverlight发布时的一个简化工具全部内容,希望文章能够帮你解决Silverlight发布时的一个简化工具所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)