AzureSiteReplicator.Data.StatusFile.Save C# (CSharp) Метод

Save() публичный Метод

public Save ( ) : void
Результат void
        public void Save()
        {
            XDocument doc = new XDocument(
                new XElement("status",
                    new XElement("state", State.ToString()),
                    new XElement("startTime", StartTime.ToString()),
                    new XElement("endTime", EndTime.ToString()),
                    new XElement("complete", Complete),
                    new XElement("objectsAdded", ObjectsAdded),
                    new XElement("objectsUpdated", ObjectsUpdated),
                    new XElement("objectsDeleted", ObjectsDeleted),
                    new XElement("parametersChanged", ParametersChanged),
                    new XElement("bytesCopied", BytesCopied)));

            string profileDir = Path.Combine(Environment.Instance.SiteReplicatorPath, _siteName);
            if (!FileHelper.FileSystem.Directory.Exists(_siteName))
            {
                FileHelper.FileSystem.Directory.CreateDirectory(profileDir);
            }

            using (Stream stream = FileHelper.FileSystem.File.Open(
                                        _filePath,
                                        FileMode.Create,
                                        FileAccess.ReadWrite,
                                        FileShare.Read))
            {
                doc.Save(stream);
            }
        }

Usage Example

        public void SaveStatusFileTest()
        {
            string profileName = "site";
            DateTime startTime = DateTime.Now;
            DateTime endTime = DateTime.Now.AddHours(1);

            StatusFileTestData[] tests = new StatusFileTestData[]
            {
                new StatusFileTestData(){
                    State = DeployState.Succeeded,
                    ObjectsAdded = 10,
                    ObjectsUpdated = 20,
                    ObjectsDeleted = 30,
                    ParametersChanged = 40,
                    BytesCopied = 50,
                    StartTime = DateTime.UtcNow,
                    EndTime = DateTime.UtcNow.AddHours(1),
                    Complete = true
                }
            };

            System.IO.Abstractions.FileBase MockFile = FileHelper.FileSystem.File;

            for (int i = 0; i < tests.Length; i++)
            {
                StatusFile statusFile = new StatusFile(profileName);
                statusFile.State = tests[i].State;
                statusFile.ObjectsAdded = tests[i].ObjectsAdded;
                statusFile.ObjectsUpdated = tests[i].ObjectsUpdated;
                statusFile.ObjectsDeleted = tests[i].ObjectsDeleted;
                statusFile.ParametersChanged = tests[i].ParametersChanged;
                statusFile.BytesCopied = tests[i].BytesCopied;
                statusFile.StartTime = tests[i].StartTime;
                statusFile.EndTime = tests[i].EndTime;
                statusFile.Complete = tests[i].Complete;

                statusFile.Save();

                Assert.IsTrue(MockFile.Exists(@"c:\" + profileName + @"\status.xml"));

                statusFile = new StatusFile(profileName);
                statusFile.LoadOrCreate();

                VerifyStatusFile(tests[i], statusFile);
            }
        }
All Usage Examples Of AzureSiteReplicator.Data.StatusFile::Save