using ICSharpCode.SharpZipLib.Zip; namespace YLErp.Modules.ClientModule { [TestClass] public class TestClientInfoQueryService { [TestMethod] public void TestGetZipFileOfClientFiles() { OtcAppContext.Initialize(s => { var s2 = s.Trim('/').Replace("/", "\\"); return @"d:\\" + s2; }); var req = new ClientInfoQueryModel { ClientNumber = "ZQZ0094" }; var buf1 = new ClientInfoQueryService(OptUserInfo.SystemUser).GetZipFileOfClientFiles(req); File.WriteAllBytes(@"D:\temp\unittest\clientfile1.zip", buf1); using (var mstream = File.Open(@"D:\temp\unittest\clientfile1.zip", FileMode.Open)) using (var s = new ZipInputStream(mstream)) { ZipEntry theEntry; var count = 0; while ((theEntry = s.GetNextEntry()) != null) { count++; var fileName = Path.GetFileName(theEntry.Name); if (fileName == string.Empty) { continue; } using var streamWriter = File.Create(@"D:\temp\unittest\" + theEntry.Name); var size = 2048; var data = new byte[2048]; while (true) { size = s.Read(data, 0, data.Length); if (size > 0) { streamWriter.Write(data, 0, size); } else { break; } } } } Assert.AreEqual("", ""); } } }