ResourceContext(Resource resource,Type type, ResourceContext parentContext, Resourcery resourcery)
 {
     Resource = resource;
     Type = type;
     ParentContext = parentContext;
     Resourcery = resourcery;
 }
        public static ResourceContext From(Resource resource,Resourcery resourcery,ResourceContext parent)
        {
            if (resource == null) return null;

            return new ResourceContext(resource,resource.Instance.GetType(),parent,resourcery);
        }