private BaseUsage LoadUsage(BaseUsage usage)
{
if (usage is MetadataPackageUsage)
{
MetadataStructureManager msm = new MetadataStructureManager();
return msm.PackageUsageRepo.Get(usage.Id);
}
if (usage is MetadataNestedAttributeUsage)
{
MetadataAttributeManager mam = new MetadataAttributeManager();
var x = from c in mam.MetadataCompoundAttributeRepo.Get()
from u in c.Self.MetadataNestedAttributeUsages
where u.Id == usage.Id //&& c.Id.Equals(parentId)
select u;
return x.FirstOrDefault();
}
if (usage is MetadataAttributeUsage)
{
MetadataPackageManager mpm = new MetadataPackageManager();
var q = from p in mpm.MetadataPackageRepo.Get()
from u in p.MetadataAttributeUsages
where u.Id == usage.Id // && p.Id.Equals(parentId)
select u;
return q.FirstOrDefault();
}
return usage;
}