In class ViewData.cs, function LoadViewXuml, we are:
var viewTypeData = new ViewTypeData();
viewPresenter.ViewTypeDataList.Add(viewTypeData);
Then when creating a view, we try in class ViewPresenter.cs function GetViewTypeData:
if (_viewTypeDataDictionary == null )
{
LoadViewTypeDataDictionary();
}
ViewTypeData viewTypeData;
if (!_viewTypeDataDictionary.TryGetValue(viewTypeName, out viewTypeData))
{
Debug.LogError(String.Format("[MarkLight] Can't find view type \"{0}\".", viewTypeName));
return null;
}
So I believe this was recently introduced for performance improvements, but _viewTypeDataDictionary is not going to have all the records as ViewTypeDataList in both need to be synchronised.
This doesn't work:
In class
ViewData.cs
, functionLoadViewXuml
, we are:Then when creating a view, we try in class
ViewPresenter.cs
functionGetViewTypeData
:So I believe this was recently introduced for performance improvements, but
_viewTypeDataDictionary
is not going to have all the records asViewTypeDataList
in both need to be synchronised.