title: Custom Property Value Converter Umbraco Returns Empty
body: <p>this is my code</p>
  
  <pre><code>@inherits Umbraco.Web.Mvc.UmbracoTemplatePage&lt;ContentModels.HomePage&gt;
  @using ContentModels = Umbraco.Web.PublishedContentModels;
  @using System.Web.Script.Serialization;
  @using Newtonsoft.Json.Linq;
  @using System.Collections.Generic;
  @using Umbraco.Core.Models.PublishedContent;
  @using Umbraco.Core.PropertyEditors;
  @using Newtonsoft.Json;
  @using System.Linq;
  
  
  @{
    Layout = "Master1.cshtml";
  }
  
  
       &lt;!-- Top menu --&gt;
          @*@Html.Partial("TopMenu")*@
          &lt;!-- End top menu --&gt;
          &lt;!-- Main nav --&gt;
          @Html.Partial("MainMenu")
          &lt;!-- Main nav ends --&gt;
  
  @Html.Partial("PromoCarousel")  
  
  &lt;div class="landing-page"&gt;
    @CurrentPage.GetGridHtml("bodyText")
  &lt;/div&gt;
  &lt;div class="col-lg-12"&gt;
     @Umbraco.Field("promo")
  &lt;/div&gt;
  
  
  
  
  @{
  
      if (CurrentPage.HasValue("promo"))
      {
          var promoListValue = CurrentPage.GetPropertyValue("promo");
  
  
  
     var serializer = new JavaScriptSerializer();
       string json =  serializer.Serialize(promoListValue);
        var testmodel  = serializer.DeserializeObject(json);
  
  
       @* foreach (var item in promoListValue)
              {
                  &lt;span&gt;@item &lt;/span&gt;
              }  
  
             @Html.Raw(json) 
              @Html.Raw(Json.Encode(json))
              *@
               @Html.Raw(testmodel)
  
              var obj = Model.Content.GetPropertyValue&lt;MyLookAlikeArchetypeModel&gt;("promo");
              &lt;span&gt;@obj &lt;/span&gt;
               foreach(var item in obj)
                  {
                      &lt;p&gt;@item.img&lt;/p&gt;
                      &lt;p&gt;@item.alias&lt;/p&gt;
                  }
  
      } 
  
  
  
  }
  
  
  
  &lt;div class="container _borderless landingpage"&gt;
  
  &lt;/div&gt;
  @functions {
  
  
  
  public class MyLookAlikeArchetypeFieldSet
  {
      [JsonProperty("alias")]
      public string alias { get; set; }
  
      [JsonProperty("img")]
      public string img { get; set; }
  }
  
  public class MyLookAlikeArchetypeModel
  {
      private List&lt;MyLookAlikeArchetypeFieldSet&gt; _Items;
  
      public MyLookAlikeArchetypeModel()
      {
          _Items = new List&lt;MyLookAlikeArchetypeFieldSet&gt;();
      }
  
      public MyLookAlikeArchetypeModel(List&lt;MyLookAlikeArchetypeFieldSet&gt; list)
      {
          _Items = list;
      }
  
      public IEnumerator&lt;MyLookAlikeArchetypeFieldSet&gt; GetEnumerator()
      {
          return _Items.GetEnumerator();
      }
  
      public bool Any()
      {
          return _Items.Any();
      }
  }
  
  public class MyLookAlikeArchetypeModelPropertyConverter : IPropertyValueConverter
  {
      public object ConvertDataToSource(PublishedPropertyType propertyType, object source, bool preview)
      {
          return source;
      }
  
      public object ConvertSourceToObject(PublishedPropertyType propertyType, object source, bool preview)
      {
          try
          {
              var list = JsonConvert.DeserializeObject&lt;List&lt;MyLookAlikeArchetypeFieldSet&gt;&gt;(source as string);
              return new MyLookAlikeArchetypeModel(list);
          }
          catch
          {
              return new MyLookAlikeArchetypeModel();
          }
      }
  
      public object ConvertSourceToXPath(PublishedPropertyType propertyType, object source, bool preview)
      {
          return null;
      }
  
      public bool IsConverter(PublishedPropertyType propertyType)
      {
          return propertyType.PropertyEditorAlias.Equals("My.Plugin.Package.Manifest.Alias");
      }
  }
  }
  </code></pre>
  
  <p>but the obj returning as empty  </p>
  
  <pre><code> var obj = Model.Content.GetPropertyValue&lt;MyLookAlikeArchetypeModel&gt;("promo");
  </code></pre>
  
  <p>the response for <code>CurrentPage.GetPropertyValue("promo");</code></p>
  
  <pre><code> [ { "alias": "1", "content": "1", "img": "/media/1069/509253678.jpg" }, { "alias": "Slide 2", "content": "2", "img": "/media/1074/636609180.jpg" } ] 
  </code></pre>
  
  <p>any help will be appreciated </p>