diff --git a/src/Umbraco.Core/Services/MemberService.cs b/src/Umbraco.Core/Services/MemberService.cs
index 1a88f0b714..fcf9f17502 100644
--- a/src/Umbraco.Core/Services/MemberService.cs
+++ b/src/Umbraco.Core/Services/MemberService.cs
@@ -264,72 +264,84 @@ namespace Umbraco.Core.Services
///
public HttpResponseMessage ExportMemberData(Guid key)
{
-
- //Filters
- List memberPropFilter = new List
+ var memberPropertyFilter = new List
{
- "RawPasswordValue","ParentId","SortOrder", "Level", "Path", "CreatorId", "Version", "ContentTypeId", "HasIdentity",
- "PropertyGroups", "PropertyTypes", "ProviderUserKey", "ContentType"
+ "RawPasswordValue",
+ "ParentId",
+ "SortOrder",
+ "Level",
+ "Path",
+ "CreatorId",
+ "Version",
+ "ContentTypeId",
+ "HasIdentity",
+ "PropertyGroups",
+ "PropertyTypes",
+ "ProviderUserKey",
+ "ContentType"
};
- List propertiesFilter = new List
+ var propertiesFilter = new List
{
- "PropertyType", "Version", "Id", "HasIdentity", "Key"
+ "PropertyType",
+ "Version",
+ "Id",
+ "HasIdentity",
+ "Key"
};
-
-
- //Get the member
+
var member = GetByKey(key);
var memberProperties = member.GetType().GetProperties();
+ var fileName = $"{member.Name}_{member.Email}.txt";
- string fileName = member.Name + "_" + member.Email + ".txt";
-
- using (MemoryStream ms = new MemoryStream())
+ using (var memoryStream = new MemoryStream())
{
- using (TextWriter tw = new StreamWriter(ms))
+ using (var textWriter = new StreamWriter(memoryStream))
{
foreach (var memberProp in memberProperties)
{
- if (memberPropFilter.Contains(memberProp.Name)) continue;
+ if (memberPropertyFilter.Contains(memberProp.Name)) continue;
var propValue = memberProp.GetValue(member, null);
var type = propValue?.GetType();
if (type == typeof(PropertyCollection))
{
- tw.WriteLine("");
- tw.WriteLine("PROPERTIES");
- tw.WriteLine("**********");
+ textWriter.WriteLine("");
+ textWriter.WriteLine("PROPERTIES");
+ textWriter.WriteLine("**********");
- if (propValue is PropertyCollection pc)
- foreach (var prop in pc)
+ if (propValue is PropertyCollection propertyCollection)
+ {
+ foreach (var property in propertyCollection)
{
- var propProperties = prop.GetType().GetProperties();
+ var propProperties = property.GetType().GetProperties();
//Writing the proerty name
- tw.WriteLine("Name : " + prop.PropertyType.Name);
+ textWriter.WriteLine("Name : " + property.PropertyType.Name);
foreach (var p in propProperties)
{
if (propertiesFilter.Contains(p.Name)) continue;
- var pValue = p.GetValue(prop, null);
- tw.WriteLine(p.Name + " : " + pValue);
+ var pValue = p.GetValue(property, null);
+ textWriter.WriteLine(p.Name + " : " + pValue);
}
- tw.WriteLine("------------------------");
+ textWriter.WriteLine("------------------------");
}
+ }
}
else
{
- tw.WriteLine(memberProp.Name + " : " + propValue);
+ textWriter.WriteLine(memberProp.Name + " : " + propValue);
}
}
- tw.Flush();
+ textWriter.Flush();
}
- HttpResponseMessage httpResponseMessage = new HttpResponseMessage();
- httpResponseMessage.Content = new ByteArrayContent(ms.ToArray());
+ var httpResponseMessage = new HttpResponseMessage();
+ httpResponseMessage.Content = new ByteArrayContent(memoryStream.ToArray());
httpResponseMessage.Content.Headers.Add("x-filename", fileName);
httpResponseMessage.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");
httpResponseMessage.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment");
diff --git a/src/umbraco.cms/Actions/ActionExportMember.cs b/src/umbraco.cms/Actions/ActionExportMember.cs
index 4754ae7c33..ac00d0ec88 100644
--- a/src/umbraco.cms/Actions/ActionExportMember.cs
+++ b/src/umbraco.cms/Actions/ActionExportMember.cs
@@ -1,10 +1,5 @@
using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
using umbraco.BasePages;
-using umbraco.BusinessLogic.Actions;
using umbraco.interfaces;
namespace umbraco.cms.Actions