小编Geo*_*ond的帖子

尝试创建资产时出现System.NotSupportedException

我试图使用Azure MediaService API与一起Azure Storage APIAPI Service中主持Azure.

用户将视频流发送到服务HttpPost,服务将视频保存为我的存储帐户中的blob,媒体服务对视频进行编码,当视频链接准备就绪时,将其返回给用户.

但是,当我试图创建Asset一个System.NotSupportedException被抛出与消息:

抛出异常:Microsoft.Data.Services.Client.dll中的'System.NotSupportedException'抛出异常:mscorlib.dll中的'System.NotSupportedException'iisexpress.exe错误:0:Exception = System.NotSupportedException:此目标框架不支持您直接枚举数据服务查询.这是因为枚举会自动向数据服务发送同步请求.由于此框架仅支持异步操作,因此必须调用BeginExecute和EndExecute方法来获取支持枚举的查询结果.

我使用以下版本的所需依赖项:

Microsoft.Data.Services.Client - 5.6.2.0
Microsoft.WindowsAzure.MediaServices.Client - 3.0.0.8
Microsoft.WindowsAzure.Storage - 3.1.0.1
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

CloudMediaContext _context;
IAsset asset;
using (MemoryStream Ms = new MemoryStream(data.Data))
{
    _context = new CloudMediaContext("accountName", "accountKey");
    asset = await _context.Assets.CreateAsync("blobContainerName",
        AssetCreationOptions.None,CancellationToken.None);
    ...
    ...
}
Run Code Online (Sandbox Code Playgroud)

data.Data包含byte[]视频.CreateAsync调用时抛出异常.我试着_context.Assets.Create没有运气.

重要编辑

我创建了一个新的控制台应用程序,使用了我在API服务中使用的代码并且它已成功执行.所以问题出在API服务中.

这是我的类和方法定义

public class UploadController : ApiController
{

    [HttpPost]
    public …
Run Code Online (Sandbox Code Playgroud)

c# azure azure-storage-blobs async-await azure-media-services

42
推荐指数
1
解决办法
1820
查看次数

在特定日期之后获取MySQL数据

如何在特定时间戳后获取MySQL数据?查询应该是什么样的?

mysql_query("SELECT * FROM table where TheNameOfTimestampColumn > than the date");
Run Code Online (Sandbox Code Playgroud)

mysql

37
推荐指数
2
解决办法
7万
查看次数

typeof(String)与System.Type.GetType("System.String")的性能

是否真的有使用typeof(String)vs的显着性能优势System.Type.GetType("System.String")

如果有的话,我想知道原因.尽可能深入CLR以证明它.

我的测试显示是,差不多.

版本2

结果

配置=释放

baseline: 5572 ticks 2 ms
typeof(Test): 8757 ticks 3 ms
Type.GetType(String): 3899966 ticks 1482 ms
Run Code Online (Sandbox Code Playgroud)

[MethodImpl(MethodImplOptions.NoInlining)]
static int Call(Type t)
{
    return 1;
}
static void Main(string[] args)
{
    const int Iterations = 1000000;
    int count;

    Stopwatch sw = Stopwatch.StartNew(); count = 0;
    for (int i = 0; i < Iterations; i++)
    {
        count += Call(null);
    }
    sw.Stop();
    Console.WriteLine("baseline: {0} ticks {1} ms", sw.ElapsedTicks, sw.ElapsedMilliseconds);

    sw = Stopwatch.StartNew(); count …
Run Code Online (Sandbox Code Playgroud)

.net c#

7
推荐指数
1
解决办法
2088
查看次数

WebView - 在每个请求上定义User-Agent

目前,我正在设置请求消息的User-Agent,如下所示:

var rm = new HttpRequestMessage(HttpMethod.Post, new Uri("http://example.com"));       
rm.Headers.Add("User-Agent", "UserAgentString");
webView.NavigateWithHttpRequestMessage(rm);
Run Code Online (Sandbox Code Playgroud)

一切都按预期工作.

但是,当我导航到另一个页面时,例如,通过单击站点上的链接,用户代理将重置为默认值WebView.

有没有办法永久设置用户代理或在每次请求时更改它?

谢谢,乔治

c# httprequest webview win-universal-app windows-10-universal

7
推荐指数
1
解决办法
1545
查看次数

Renderer多个selectRootElement问题

我试图用Renderer.selectRootElement摆脱我的组件的一些元素,如所描述这里.

除非我只选择一个元素(plnkr),否则一切正常.

如您所见,我创建了一个组件:

export class ExampleComponent implements OnInit{
    @Input() start: any;
    @Input() end: any;

  constructor(public _renderer:Renderer){

  };

    ngOnChanges(){

    }
    ngOnInit(){
        console.log("NG ON CHAN START DATE",this.start);
        console.log("NG ON INIT END DATE",this.end);
        var container =  this._renderer.selectRootElement('.container');
        console.log(container);   
        var inner1 =  this._renderer.selectRootElement('.inner1');
        console.log(inner1);   
        var inner2 =  this._renderer.selectRootElement('.inner2');
        console.log(inner2);   
    }

}
Run Code Online (Sandbox Code Playgroud)

当我尝试运行它时,我有一个错误:

EXCEPTION:选择器".inner1"与MainViewComponent @ 3:65中[{{exampleData.end}}中的任何元素都不匹配]

(但是,在我的应用程序中,当只找到第一个容器时,则找不到其他容器).

这有什么想法来自哪里?

UPDATE

我发现该指令未被完全调用 - 只有带有类的div container被添加到HTML中.

在此输入图像描述

angular

4
推荐指数
2
解决办法
1万
查看次数