我在MSDN的Linq示例中找到了一个名为Fold()的简洁方法,我想使用它.他们的例子:
double[] doubles = { 1.7, 2.3, 1.9, 4.1, 2.9 };
double product =
doubles.Fold((runningProduct, nextFactor) => runningProduct * nextFactor);
Run Code Online (Sandbox Code Playgroud)
不幸的是,无论是在他们的示例中还是在我自己的代码中,我都无法进行编译,而且我在MSDN中找不到任何其他地方(如Enumerable或Array扩展方法).我得到的错误是一个普通的"不知道任何关于那个"的错误:
error CS1061: 'System.Array' does not contain a definition for 'Fold' and no
extension method 'Fold' accepting a first argument of type 'System.Array' could
be found (are you missing a using directive or an assembly reference?)
Run Code Online (Sandbox Code Playgroud)
我正在使用其他我认为来自Linq的方法(比如Select()和Where()),我正在"使用System.Linq",所以我认为一切都好.
这种方法确实存在于C#3.5中,如果是这样,我做错了什么?
我正在玩情绪分析,我正在寻找一些种子数据.周围有免费的字典吗?
它可以非常简单:3组文本/句子,用于"正面","负面","中立".它不一定非常庞大.
最终,我可能会为我的特定用例生成自己的种子数据,但是在我构建这个东西时,现在有一些东西可以玩.
我正在尝试在MySQL 5.0中进行以下格式的更新:
update mytable.myfield t
set f = 'blah'
where t.id in (select v.id from myview v where ...);
Run Code Online (Sandbox Code Playgroud)
MySQL告诉我:
ErrorNr. 1443
The definition of table 'v' prevents operation UPDATE on table 't'.
Run Code Online (Sandbox Code Playgroud)
MySQL文档列出了这个错误,但是(像往常一样)不说它的意思.任何人都可以为我阐明这一点吗?我只引用子查询中的视图,我只引用主查询中的表,我不知道为什么这些会阻止更新.我在谷歌找到的唯一一件事就是与触发器相关的MySQL bug数据库中的一个错误,但是(AFAIK)我的数据库中没有触发器.
每当我输入某些内容时,Emacs就会重新使用当前行,例如";" 要么 "//".这非常令人讨厌,因为有很多地方不够智能缩进.
如何禁用此功能?我仍然希望能够使用TAB缩进该行,但我不希望我输入的任何源代码使其重新启动.
(我正在使用Dylan Moonfire的C#模式,但这可能适用于任何cc模式.)
c# ×1
cc-mode ×1
dictionary ×1
elisp ×1
emacs ×1
indentation ×1
linq ×1
mysql ×1
reduce ×1
sql ×1