/// <summary> /// Create resource refernece for local /// </summary> public static Reference CreateLocalResourceReference(DomainResourceBase instance) { IdRef idRef = instance.MakeIdRef(); return(new Reference() { ReferenceUrl = idRef.Value, Display = instance.ToString() }); }
/// <summary> /// Create resource refernece (friendly method) /// </summary> public static Reference CreateResourceReference(DomainResourceBase instance, Uri baseUri) { return(new Reference() { Display = instance.ToString(), //Type = new PrimitiveCode<string>(instance.GetType().GetCustomAttribute<XmlRootAttribute>() != null ? instance.GetType().GetCustomAttribute<XmlRootAttribute>().ElementName : instance.GetType().Name), ReferenceUrl = String.IsNullOrEmpty(instance.VersionId) ? baseUri.ToString() + String.Format("/{0}/{1}", instance.GetType().Name, instance.Id) : baseUri.ToString() + String.Format("/{0}/{1}/_history/{2}", instance.GetType().Name, instance.Id, instance.VersionId) }); }