问题列表 - 第3792页

如何只执行一次命令时检查DBNull?

当我从数据库中检索任何标量值时,我通常会为可空字段编写这样的代码.

cmd.ExecuteScalar() == DBNull.Value ? 0 : (int)cmd.ExecuteScalar()
Run Code Online (Sandbox Code Playgroud)

但我不喜欢它,因为它执行两次Executescalar语句.这是我的网站服务器的额外之旅,并支持性能我不想这样做.

有什么办法可以摆脱这个额外的ExecuteScalar()吗?

.net sql database ado.net

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

在sqlite数据库中保存日志表?

我正在寻找一种方法来设置(通过SQL)一个日志表,其中包含对我的sqlite数据库所做的所有事情(最好是根据发布到数据库的insert,create table等语句).我确信有办法通过在每个表上设置触发器来实现它,但这只是太多的工作,如果我稍后更改数据库的模式,那就不好了.是否存在一个对数据库起作用的全局事物(如数据库本身的触发器)?

我也愿意提供其他建议来保存对sqlite数据库所做更改的记录,以便我可以在几个月后回顾这些更改.

(编程当然有方法,但我不能确定我的程序是唯一写入数据库的程序).

sql sqlite

9
推荐指数
2
解决办法
8390
查看次数

在翻译LINQ表达式时,C#编译器如何选择SelectMany?

Enumerable.SelectMany有4个重载签名.为简单起见,我们忽略了带有int参数的两个签名.所以我们有4个SelectMany签名:

public static IEnumerable<TResult> SelectMany<TSource, TResult>(
    this IEnumerable<TSource> source,
    Func<TSource, IEnumerable<TResult>> selector
)

public static IEnumerable<TResult> SelectMany<TSource, TCollection, TResult>(
    this IEnumerable<TSource> source,
    Func<TSource, IEnumerable<TCollection>> collectionSelector,
    Func<TSource, TCollection, TResult> resultSelector
)
Run Code Online (Sandbox Code Playgroud)

我的问题是:在将LINQ表达式转换为扩展方法调用时,C#编译器如何选择SelectMany?

基本上,如果LINQ表达式中有多个from,则会有SelectMany.但是,似乎C#编译器只选择第二个签名.永远不会使用第一个签名.

        IEnumerable<int> en1 = Enumerable.Range(1, 3);
        IEnumerable<double> en2 = new double[] { 1.0, 3.14 };

        IEnumerable<string> en3 =
            from i1 in en1
            from i2 in en2
            select (i1 * i2).ToString();

        foreach (var i in en3)
        {
            Console.WriteLine(i);
        }
Run Code Online (Sandbox Code Playgroud)

在Reflector的帮助下,我可以看到上面的LINQ表达式被翻译成了

en1.SelectMany<int, double, string>(delegate (int i1) { …
Run Code Online (Sandbox Code Playgroud)

c# linq select expression

9
推荐指数
2
解决办法
3795
查看次数

使用bash删除带空格的目录

我正在使用以下命令删除名为"Test Folder"的文件夹中的每个".dummy"目录:

rm -rf `find "Test Folder" -type d -name .dummy`
Run Code Online (Sandbox Code Playgroud)

但是,这不起作用,因为它扩展到,比如说:

rm -rf Test Folder/.dummy
Run Code Online (Sandbox Code Playgroud)

由于空格未被转义,因此失败.

我也尝试过这样的事情:

find "Test Folder" -type d -name .dummy -exec rm -rf {} \;
Run Code Online (Sandbox Code Playgroud)

它工作,但它给出了一个恼人的错误,如下所示:

find: Test Folder/.dummy: No such file or directory
Run Code Online (Sandbox Code Playgroud)

有没有办法让任何一种解决方案成功?

bash find

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

如何用php识别机器人?

我正在为我的用户构建统计信息,并且不希望机器人的访问被计算在内.

现在我有一个基本的php,每次调用页面时mysql增加1.

但机器人也被添加到计数中.

有没有人能想到办法?

主要是那些搞乱的主要因素.谷歌,雅虎,Msn等

php statistics bots

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

获取java的网站源码

我想使用java来获取网站的来源(安全),然后解析该网站中的链接.我已经找到了如何连接到该URL,但是我怎样才能轻松获得源代码,更喜欢DOM Document oso,我可以轻松获得我想要的信息.

或者是否有更好的方式连接到https站点,获取源(我需要做的是获取数据表...非常简单)然后这些链接是我要下载的文件.

我希望它是FTP,但这些文件存储在我的tivo上(我想以编程方式将它们下载到我的电脑上(

java url tivo dvr

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

std :: list with std :: map properties?

基本上,我想有一个std :: list但是有std :: map属性,比如find(),我真的需要循环遍历每个列表条目才能找到我需要的东西吗?

c++ maps stl list

0
推荐指数
3
解决办法
3291
查看次数

如何生成与直方图匹配的点?

我正在研究一个模拟系统.我将很快获得实验数据(直方图),用于几个模拟输入的实际值分布.

当模拟运行时,我希望能够生成与测量分布匹配的随机值.我宁愿这样做而不存储原始直方图.有什么好方法

  1. 将直方图映射到表示分布的一组参数?
  2. 在运行时生成基于这些参数的值?

编辑:输入数据是几种不同类型事件的事件持续时间.我希望不同的类型具有不同的分布函数.

c algorithm probability histogram numerical-analysis

11
推荐指数
1
解决办法
2330
查看次数

Java中的接口:无法使已实现的方法受到保护或私有

我知道界面必须是公开的.但是,我不希望这样.

我希望我的实现方法只能从他们自己的包中访问,所以我希望我的实现方法受到保护.

问题是我无法使接口或实现的方法受到保护.

什么是解决方法?是否存在与此问题相关的设计模式?

从Java指南中,抽象类也不能完成这项工作.

java interface access-specifier

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

Ruby Object会员访问:如何完成?

看了这个问题:

如何将对象的字段转储到控制台?

我有一个相关的问题.我对Ruby比较陌生,所以希望这很明显.我有我认为是从MIME :: Types库生成的Ruby对象.我希望得到一个特定文件的简单文件类型.这是在irb中发生的事情:

>> require 'mime/types'
=> ["MIME"]
>> text = MIME::Types['text/plain; charset=us-ascii']
=> [#<MIME::Type:0x2483ee0 @simplified="text/plain", @obsolete=nil, @raw_media_type="text", @content_type="text/plain", @system=nil, @registered=true, @url=["RFC2046", "RFC3676"], @media_type="text", @encoding="quoted-printable", @sub_type="plain", @raw_sub_type="plain", @extensions=["txt", "asc", "c", "cc", "h", "hh", "cpp", "hpp", "dat", "hlp"]>, #<MIME::Type:0x2476024 @simplified="text/plain", @obsolete=nil, @raw_media_type="text", @content_type="text/plain", @system=/vms/, @registered=true, @url=nil, @media_type="text", @encoding="8bit", @sub_type="plain", @raw_sub_type="plain", @extensions=["doc"]>]
>> puts text.media_type
NoMethodError: undefined method `media_type' for #<Array:0x2483af8>
    from (irb):4
Run Code Online (Sandbox Code Playgroud)

我的理解是我应该能够使用点语法访问这个对象的属性 - 实际上,我从(http://mime-types.rubyforge.org/)学到的这个页面就是这样说的!那么为什么我会得到一个"无方法"错误呢?我尝试了各种其他语法,但没有运气.

先谢谢,亚伦.

ruby ruby-on-rails

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