小编Rob*_*vey的帖子

Lua作为通用脚本语言?

当我看到Lua时,我唯一能读到的东西是"非常适合嵌入","快速","轻量级"以及更多的其他内容:"魔兽世界"或简称"魔兽世界".

为什么仅限于将整个内容嵌入到另一个应用程序中?为什么不像使用Python或Perl一样编写通用脚本?

Lua似乎在速度和内存使用方面做得很好(最快的脚本语言),为什么我从未将Lua用作"桌面脚本语言"来自动执行任务?例如:

  • 重命名一堆文件
  • 从网上下载一些文件
  • Webscraping

是缺少标准库吗?

python scripting lua

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

AJAX将JavaScript字符串数组发布到JsonResult作为List <string>始终返回Null?

我正在尝试在JavaScript中构建一个字符串数组,并在action方法的字符串列表中获取结果.以下是我的JavaScript的样子.我正在使用jQuery 1.4.2.问题是我在动作方法中的List总是显示NULL.JavaScript字符串数组是否会映射到C#中的字符串列表?

    var test = ['test1', 'test2'];

    var parms = {
        var1: 'some string',            
        var2: test
    };

    $.ajax({
        type: "POST",
        url: "/Test/JSONTestAction",
        async: false,
        data: parms,
        dataType: "json",
        success: function(data) {

            // success
        }
    });
Run Code Online (Sandbox Code Playgroud)

然后我的JsonResult看起来如下:

    public JsonResult JSONTestAction(string var1, List<string> var2)
    {
        // var2 is always NULL -- not good

        return Json(new { test = "test" });
    }
Run Code Online (Sandbox Code Playgroud)

arrays ajax asp.net-mvc jquery json

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

使用ShowDialog显示时,如何控制对话框的位置?

这是一个非常微不足道的问题,但我似乎无法找到解决问题的方法.这让我烦恼,因为我觉得我应该知道答案,但我要么是在寻找错误的术语,要么是在寻找错误的方法和属性.

我有一个从两个地方调用的配置对话框.

第一个是从表单上的按钮正常工作 - 正如您所期望的那样.

第二个是来自系统托盘中notifyIcon的上下文菜单,但它出现在屏幕的左上角.理想情况下,我希望它显示在主屏幕的中心,或者可能靠近系统托盘.

  • 我已经尝试过设置Location,但是在dialog.ShowDialog()调用时它似乎被覆盖了.

  • 我已经尝试过使用dialog.ShowDialog(IWin32Window)重载,但这似乎并不像我那样传递null窗口句柄.

  • 我尝试使用dialog.Show(),但(这是我可能出错的地方)设置位置似乎不会给出一致的结果.

  • 我甚至尝试过设置dialog.Parent属性 - 这当然会引发异常.

我只知道当我(希望)看到一些答案时,我会意识到答案是显而易见的,但此刻我完全陷入困境.

谢谢你的答案 - 我怀疑这是显而易见的,但像往常一样,我一直坚持俯视错误的路线.更令人讨厌的是我也使用过设计师的这个属性.

c# dialog winforms

34
推荐指数
3
解决办法
4万
查看次数

客户端通知,我应该使用AJAX推送还是轮询?

我正在开发一个简单的通知服务,用于向浏览网站的用户传递消息.通知不必实时发送,但如果它们的发生频率高于每5分钟发送一次,则可能是更好的用户体验.发送到客户端和从客户端发送的数据不是很大,而且是检索数据的直接数据库查询.

在阅读有关该主题的其他对话时,似乎AJAX推送可能导致更高的服务器负载.由于我可以容忍更长的服务器延迟,因此有必要让服务器推送通知或简单地轮询.

实现推送方案并不困难,所以我想我会看到这里的意见.

谢谢你的帮助.

编辑:我已经研究了一个简单的AJAX推送,并根据Mike Purvis的这篇文章实现了一个简单的演示.对于初始版本,客户端负载相当低,大约为5k,并且预计会在相当长的一段时间内保持这种状态.


谢谢大家的回复.我已决定使用轮询解决方案,但将其全部包装在实用程序库中,这样如果他们想稍后更改它就会更容易.

javascript ajax web-services server-push

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

在没有等待的情况下使用async

我想创建一个异步函数,所以我只需添加async如下:

public async static void something(){
}
Run Code Online (Sandbox Code Playgroud)

你可以看到它的返回类型是void.我只是想这一功能,必须异步调用不会阻塞,因为回报void所以没有await需要.

但Visual Studio 2012只是无法编译这个,它说我想念await

你能告诉一个async没有使用功能的样品吗await

c# asynchronous async-await c#-5.0 visual-studio-2012

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

有没有更快的方法在C#中复制数组?

我有三个阵列需要组合在一个三维数组中.以下代码显示Performance Explorer中的性能降低.有更快的解决方案吗?

for (int i = 0; i < sortedIndex.Length; i++) {
    if (i < num_in_left)
    {    
        // add instance to the left child
        leftnode[i, 0] = sortedIndex[i];
        leftnode[i, 1] = sortedInstances[i];
        leftnode[i, 2] = sortedLabels[i];
    }
    else
    { 
        // add instance to the right child
        rightnode[i-num_in_left, 0] = sortedIndex[i];
        rightnode[i-num_in_left, 1] = sortedInstances[i];
        rightnode[i-num_in_left, 2] = sortedLabels[i];
    }                    
}
Run Code Online (Sandbox Code Playgroud)

更新:

我其实是在尝试做以下事情:

//given three 1d arrays
double[] sortedIndex, sortedInstances, sortedLabels;
// copy them over to a 3d array (forget about …
Run Code Online (Sandbox Code Playgroud)

c# arrays copy

32
推荐指数
4
解决办法
5万
查看次数

是否有Tuple类的版本,其Items属性不是readonly并且可以设置?

我想知道是否有一个类的内置版本,Tuple其Items属性不是readonly,可以设置.

或者有人能为我提供这样的版本吗?

我正在寻找一个实现Tuple类的基本功能的解决方案,(Equals,GetHashCode)

.net c# tuples

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

是否可以使用JSLint验证我的jQuery JavaScript?

我想用JSLint检查我的JavaScript.我也在使用jQuery,JSLint似乎对jQuery非常不满意.

所以,如果我有这个代码:

$(document).ready{
    $("a").click(function() {
        // foo
    });
});
Run Code Online (Sandbox Code Playgroud)

我收到一些JSLint消息:

错误:

第1行第1个问题:在定义之前使用了'$'.

$(document).ready{
Run Code Online (Sandbox Code Playgroud)

...

我查看了这些选项,但我无法弄清楚如何告诉JSLint这是可以的.

如果我的代码中只有一个jQuery调用,我可以忽略JSLint消息,但是在2500行脚本中有很多调用,我找不到我要在所有这些消息之间修复的错误.

那么,有没有人知道如何配置JSLint使其适用于jQuery调用?或者还有什么我可以用来检查我的JavaScript/jQuery代码的质量?

javascript jquery jslint

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

如何使用lambda表达式从字典中删除项目

我不是LINQ解决方案,

我使用简单的谓词来确定是否应该删除密钥,例如,如果字典是构造的Dictionary<int, int>,那么我应该如何删除所有带有负数据的条目

我更喜欢使用相同的字典,而不是创建新字典,我没有性能问题

有没有办法做到这一点,不使用LINQ,而是使用Lambda表达式?

我不想在LINQ中使用解决方案,因为没有人在我的项目中使用它们,不想成为第一个..但是因为我看到LINQ解决方案看起来更好,我将使用它们..

c# lambda dictionary

31
推荐指数
3
解决办法
4万
查看次数

ASP.NET MVC中的最佳实践ViewModel验证

DataAnnotations用于在ASP.NET MVC应用程序中ViewModel使用jquery.validate.unobtrusive和在服务器端验证我的客户端.

不久前,我发现我可以写这样的验证:

[Required(ErrorMessage = "{0} is required")]
public string Name { get; set; }
Run Code Online (Sandbox Code Playgroud)

这样我就可以在配置或资源中轻松定义一些通用字符串,并始终使用它DataAnnotations.因此,将来在整个应用程序中更改验证消息会更容易.

另外我知道有一个FluentValidation库允许向现有的验证规则添加验证规则ViewModel.我知道添加/编辑有一个问题ViewModels,可能有类似的字段,但ValidationRules不同.

客户端验证的另一个问题是,应该解析新添加到DOM的 html (使用ajax请求)以启用验证.我是这样做的:

$('#some-ajax-form').data('validator', null); 
$.validator.unobtrusive.parse('#some-ajax-form');
Run Code Online (Sandbox Code Playgroud)

所以我有一些问题:

  1. 是否有一些其他有用的实践可以帮助集中应用程序中的所有验证规则?
  2. 什么是解决添加/编辑ViewModel验证问题的最佳方法?我可以使用DataAnnotationsFluentValidation或单独添加和编辑ViewModels仍然是最好的选择?
  3. 有没有更好的方法来初始化对我提到的ajax调用收到的新DOM元素的验证?

我不是问如何创建自己的DataValidators我知道怎么做.我想方设法如何以更高效和易维护的方式使用它们.

c# validation asp.net-mvc data-annotations unobtrusive-validation

31
推荐指数
3
解决办法
4万
查看次数