public void When_DataServiceException_is_serialized_all_public_instance_data_is_saved()
        {
            // Arrange
            const int expectedStatusCode = 705;
            const string expectedErrorCode = "A47";
            const string expectedMessage = "Server error.";
            const string expectedMessageLang = "en";

            var sut = new DataServiceException(
                expectedStatusCode, expectedErrorCode, expectedMessage, expectedMessageLang, innerException: null);

            // Act
            var ds = SerializeAndDeserializeDataServiceException(sut);

            // Assert
            Assert.AreNotSame(sut, ds);
            Assert.AreEqual(sut.GetType(), ds.GetType());
            Assert.AreEqual(expectedMessage, ds.Message);
            Assert.AreEqual(expectedStatusCode, ds.StatusCode);
            Assert.AreEqual(expectedErrorCode, ds.ErrorCode);
            Assert.AreEqual(expectedMessageLang, ds.MessageLanguage);
        }