小编mat*_*key的帖子

在launch.json中使用grunt

我加载了yeoman generator-meanjs并用Visual Studio Code打开它.调试器工作得很好.当我单击调试侧栏按钮时,为我生成了launch.json文件.launch.json生成器正在查看包含的package.json "scripts": { "start": "grunt"}.

生成器使用grunt来启动应用程序.launch.json文件具有以下内容:

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Launch",
            "type": "node",
            "request": "launch",
            "program": "grunt",
            "stopOnEntry": false,
            "args": [],
            "cwd": ".",
            "runtimeExecutable": null,
            "runtimeArgs": [
                "--nolazy"
            ],
            "env": {
                "NODE_ENV": "development"
            },
            "externalConsole": false,
            "sourceMaps": false,
            "outDir": null
        },
        {
            "name": "Attach",
            "type": "node",
            "request": "attach",
            "port": 5858
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

当我'program' : 'grunt'用server.js 替换它时,它工作.如果我可以将类型更改为grunt,但似乎只支持节点或单声道.

electron visual-studio-code

6
推荐指数
1
解决办法
4245
查看次数

从后端业务层调用 SignalR Hub

我有一个 MVC 网站,上面有一些相当大的业务对象。我的 MVC 控制器调用管理器对象,这些对象将工作委托给其他对象集。

基本上代码是深层的服务器端,而集线器在某种程度上就像一个控制器,因为它非常接近客户端。

有没有办法根据传递给这些 Manager 对象的 Hub 引用来执行 SignalR 方法?

signalr signalr-hub signalr.client

5
推荐指数
1
解决办法
3404
查看次数

检查字符串数组元素仅包含另一个数组中的元素

我有2个阵列

string[] allPossible = {"ID","Age","FirstName","LastName","Gender","Kudos"};
string[] enteredItems = {"Age", "LastName"};
Run Code Online (Sandbox Code Playgroud)

我想检查数组,enteredItems只包含在数组中找到的元素allPossible.我想用LINQ做这件事.

我看了

allPossible.Any(el => enteredItems .Contains(el));
Run Code Online (Sandbox Code Playgroud)

allPossible.Intersect(enteredItems).Any();
Run Code Online (Sandbox Code Playgroud)

相反,我循环通过enteredItems并使用Array.IndexOf(allPossible, x) == -1 return false.

返回的顶部数据样本将返回true ...但是如果在enteredItems数组中只有1个元素不在allPossible数组中,那么将出现false.即.

string[] allPossible = {"ID","Age","FirstName","LastName","Gender","Kudos"};
string[] enteredItems = {"Age", "Geeky"};
Run Code Online (Sandbox Code Playgroud)

因为''allIossible'元素中不存在'enteredItems'数组中的1个元素,所以会出错.

必须有LINQ查询才能执行此操作.

c# linq

5
推荐指数
1
解决办法
1356
查看次数

多个异步方法,最好使用WhenAll具有不同的返回类型

我有一个异步控制器动作方法,它在我的后端调用4个异步方法,从每个方法返回List.每个方法的对象列表都不同.即列表清单等

我这样做是这样的:

BizProvider bp = new BizProvider();
List<biz.Customer> custReturn = await bp.GetCustomerAsync();
List<biz.Account> acctReturn = await bp.GetAccountAsync();
...plus 2 more
List<object> returnArr = new List<object>();
returnArr.Add(custReturn);
returnArr.Add(acctReturn);  ...plus 2 more
return JsonConvert.SerializeObject(returnArr);
Run Code Online (Sandbox Code Playgroud)

我应该使用Task.WhenAll多个任务吗?

微软的例子 https://msdn.microsoft.com/en-us/library/hh194874%28v=vs.110%29.aspx

所有任务都返回 List<int>

所以我使用了抽象类,并且我的所有列表对象类型都继承自此.并且我更改了业务对象提供程序的返回类型以返回抽象类型的列表,所以现在我可以这样做:

var tasks1 = new List<Task<List<Biz.AbstractClass>>>();
tasks1.Add(bp.GetCustomerAsAbstractAsync());
tasks1.Add(bp.GetAccountAsAbstractAsync());
...plus 2 more
Run Code Online (Sandbox Code Playgroud)

然后我调用var continuation = Task.WhenAll(tasks1);

这会执行它到达的下一行.Results然后停止执行???

foreach (var result in continuation.Result)
                                       ^ stops here
Run Code Online (Sandbox Code Playgroud)

我打电话

returnArrays.Add(result1);
return JsonConvert.SerializeObject(returnArrays);
Run Code Online (Sandbox Code Playgroud)

但这些永远不会受到打击......我不知道为什么.也许我不需要WhenAll,但我仍然好奇出了什么问题.也许我需要等待特定的函数,或以某种方式调用Action,就像在Microsoft链接中函数被内联调用一样.

Task.Run(async () => { x=x,etc...)
Run Code Online (Sandbox Code Playgroud)

编辑20150306 =>添加更多实施细节

CustMan …
Run Code Online (Sandbox Code Playgroud)

.net c# asynchronous async-await

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

Android上的mp4视频

我想将一些旧的Flash视频转换为1种视频格式,以便内容显示在手机上.我有一些mp4,它在Android上不起作用,特别是在Android 4.3上运行的Chrome 32.

点击此链接即可

它正在Android 4.3上的Chrome 32上加载mp4文件,但我认为不支持H.256

然后我去了这个网站http://techslides.com/sample-webm-ogg-and-mp4-video-files-for-html5/

而mp4视频适用于Android/Chrome.

我使用VLC检查编解码器,它们看起来一样

H264 - MPEG-4 AVC (part 10) (avc1)
Resolution: is different (working one is 560x320
Resolution: mp4 not working is 640x480
Framerate: working is 30, not working is 12
Decoded format: Planar4:2:0 YUV
Run Code Online (Sandbox Code Playgroud)

然后我用ffmpeg搜索了编解码器,我发现有一个名为compatible_brands的属性:mp42icomavc1

这与具有此属性设置为兼容的非工作mp4不同:mp42mp41

文件大小也完全不同.这可能是一个问题.

当我加载http://html5test.com时,Android浏览器上的Chrome表示H.264不支持MPEG-4.它没有说容器的任何内容.

好吧这里是一些源代码,我认为android上的chrome不支持mp4文件,但是当我在运行Android 4.3的Sony Xperia Tablet上运行的Chrome 32上加载以下内容时.我有一个mp4文件,我转换为webm,但铬仍然无法运行它.它是8 MB所以也许尺寸是一个问题....这个mp4有不同的大小和框架.除此之外,我只看到与上述不同的兼容版本.

<html>
<head>
    <meta name="viewport" content="width=device-width">
</head>
<body>
    <h4>This is mp4 video</h4>
    <video id="small" controls="controls" autoplay="autoplay" preload="auto" name="small">
        <source src="http://techslides.com/demos/sample-videos/small.mp4" type="video/mp4">
    </video>
</body>
</html> 
Run Code Online (Sandbox Code Playgroud)

video android google-chrome ffmpeg html5-video

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

CSS关键字和属性之间的区别?

有人问我CSS关键字是什么,我对此问题感到困惑,并认为它可能是CSS3或LESS的一些新功能,我不是最新的事情.

然而,谷歌搜索后似乎CSS关键字只是CSS属性,如背景颜色:黄色;

我对么?

css css3

0
推荐指数
1
解决办法
629
查看次数