从Azure获取一个IAsset的详细信息

时间:2013-04-19 12:31:26

标签: azure azure-media-services

我正在接触Azure,特别是媒体服务。

我想收集我在Media Services中上传和编码的一个媒体项的详细信息,而无需从Azure下载整个AssetBaseCollection。

当我有1000个资产时,我担心这不是最好的方法,但目前这是我可以访问任何资产详情的唯一方式,如下所示。

var assetList = _context.Assets.ToList();

如果我尝试直接查询_context.Assets(单个,firstordefault),我会得到一个不受支持的异常。

如何从_context.Assets中只收集一个资产(IAsset)而不拉动整个集合并在列表上执行查询?

1 个答案:

答案 0 :(得分:0)

您可以查询资产,但必须先使用.Where(predicate bool),然后使用.FirstOrDefault

以下代码只会为您提供一项资产,而不会将所有资产都列入清单:

 public IAsset GetAssetById(string assetId)
        {
            var asset = _context.Assets.Where(x => x.Id.Equals(assetId)).FirstOrDefault();

            if (null == asset)
            {
                return null;
            }
            return asset;
        }

您可以在WaMediaWeb project处查看我的其余代码,我已经在Web应用程序中包含了几乎所有可以使用Media Service执行的操作。