public IEnumerable<Asset> GetReferences(Asset assemblyAsset)
        {
            if (assemblyAsset.Type != AssetType.Assembly)
                throw new ArgumentException("Asset must be of type Assembly", "assemblyAsset");

            Assembly assembly = assemblyAsset.GetAssembly();

            AssemblyName[] references = assembly.GetReferencedAssemblies();

            foreach (AssemblyName reference in references)
            {
                Assembly asm = this._assemblyLoader.Load(reference.ToString());

                if (asm == null)
                    throw new FileNotFoundException("Assembly not found: " + reference.ToString());

                Asset asset = ReflectionServices.GetAsset(asm);

                yield return asset;
            }
        }