예제 #1
0
        public void SerializeUsers(string repositoryFileName, DataSetForUserRepository dataSet)
        {
            if (string.IsNullOrWhiteSpace(repositoryFileName))
            {
                throw new ArgumentException(nameof(repositoryFileName));
            }

            if (dataSet == null)
            {
                throw new ArgumentNullException(nameof(dataSet));
            }

            if (dataSet.Users == null)
            {
                throw new ArgumentNullException(nameof(dataSet.Users));
            }

            FileStream fs = new FileStream(repositoryFileName, FileMode.Create);

            BinaryFormatter formatter = new BinaryFormatter();

            try
            {
                formatter.Serialize(fs, dataSet);
            }
            catch (SerializationException e)
            {
                Trace.WriteLine("Failed to serialize users in UserMemoryCacheWithState. Reason: " + e.Message);
                throw;
            }
            finally
            {
                fs.Dispose();
            }
        }
        public void SerializeUsers(string repositoryFileName, DataSetForUserRepository dataSet)
        {
            if (string.IsNullOrWhiteSpace(repositoryFileName))
            {
                throw new ArgumentException(nameof(repositoryFileName));
            }

            if (dataSet == null)
            {
                throw new ArgumentNullException(nameof(dataSet));
            }

            if (dataSet.Users == null)
            {
                throw new ArgumentNullException(nameof(dataSet.Users));
            }

            XmlSerializer formatter = new XmlSerializer(typeof(DataSetForUserRepository));

            using (FileStream fs = new FileStream(repositoryFileName, FileMode.Create))
            {
                formatter.Serialize(fs, dataSet);
            }
        }