Silverlight发布时的一个简化工具
XAP包中的配置需要手动改?
这几天到了项目小结测试的时候,需要发布到服务器上测试接口,因此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", "RIA.zip"), fileName.Replace("result", "RIA.xap")); MessageBox.Show("替?换?完ê成é!?"); } else { MessageBox.Show("请?选?择?RIA.xap文?件t并¢填?写′需è要a替?换?的?字?符?串?再ù进?行D操ù作÷!?"); }
源代码及可执行文件
分类:
Silverlight
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· [AI/GPT/综述] AI Agent的设计模式综述